モジュール java.base
パッケージ java.nio

クラスLongBuffer

java.lang.Object
java.nio.Buffer
java.nio.LongBuffer
すべての実装されたインタフェース:
Comparable<LongBuffer>

public abstract class LongBuffer extends Buffer implements Comparable<LongBuffer>
longバッファです。

このクラスは、longバッファに対する操作を4つのカテゴリに分類します。

  • 単一long値の読み込みと書込みを行う絶対および相対get/putメソッド。

  • 連続したシーケンスをこのバッファから配列に転送する絶対および相対bulk getメソッド; および

  • long配列{#if[char]?, a string,}またはその他のlongバッファからこのバッファに連続したlongのシーケンスを転送する絶対および相対bulk putメソッド。{#if [!byte]?および}

  • 長いバッファをcompactingするメソッド。

longバッファは、allocationがバッファ・コンテンツ用の領域を割り当てるか、wrappingが既存のlong配列 {#if[char]?or string} をバッファに割り当てるか、または既存のbyteバッファのviewを作成することによって作成できます。

byteバッファと同様に、longバッファにもダイレクト」と「非ダイレクトがあります。 このクラスのwrapメソッドで作成されたlongバッファは非ダイレクト・バッファになります。 byteバッファのビューとして作成されたlongバッファは、byteバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。 longバッファがダイレクト・バッファかどうかは、isDirectメソッドの呼出しによって判断できます。

このクラスのメソッドのうち戻り値を返さないものは、自身を呼び出したバッファの情報を返します。 これを応用して、メソッド呼出しを連鎖させることができます。

導入されたバージョン:
1.4
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    static LongBuffer
    allocate(int capacity)
    新しいlongバッファを割り当てます。
    final long[]
    このバッファを補助するlong配列を返します  (オプションの操作)
    final int
    このバッファの補助配列内にある、このバッファの最初の要素のオフセットを返します  (オプションの操作)
    abstract LongBuffer
    このバッファの内容を共有する新しい読込み専用longバッファを作成します。
    このバッファをクリアします。
    abstract LongBuffer
    このバッファを圧縮します  (オプションの操作)
    int
    このバッファを別のバッファと比較します。
    abstract LongBuffer
    このバッファの内容を共有する新しいlongバッファを作成します。
    boolean
    このバッファが別のオブジェクトと等価であるかどうかを判断します。
    このバッファをフリップ(反転)します。
    abstract long
    get()
    相対getメソッドです。
    abstract long
    get(int index)
    絶対getメソッドです。
    get(int index, long[] dst)
    絶対一括getメソッド。
    get(int index, long[] dst, int offset, int length)
    絶対一括getメソッド。
    get(long[] dst)
    相対一括getメソッドです。
    get(long[] dst, int offset, int length)
    相対一括getメソッドです。
    final boolean
    このバッファがアクセス可能なlong配列に連動するかどうかを判断します。
    int
    このバッファの現在のハッシュ・コードを返します。
    abstract boolean
    現在のlongバッファがダイレクト・バッファであるかどうかを判断します。
    limit(int newLimit)
    このバッファのリミットを設定します。
    このバッファの現在位置にマークを設定します。
    int
    このバッファと指定されたバッファの最初の不一致の相対索引を検索して戻します。
    abstract ByteOrder
    このバッファのbyte順序を取得します。
    position(int newPosition)
    このバッファの位置を設定します。
    abstract LongBuffer
    put(int index, long l)
    絶対putメソッドです  (オプションの操作)
    put(int index, long[] src)
    (optional operation)の絶対一括putメソッド。
    put(int index, long[] src, int offset, int length)
    (optional operation)の絶対一括putメソッド。
    put(int index, LongBuffer src, int offset, int length)
    (optional operation)の絶対一括putメソッド。
    abstract LongBuffer
    put(long l)
    相対putメソッドです  (オプションの操作)
    put(long[] src)
    相対一括putメソッドです  (オプションの操作)
    put(long[] src, int offset, int length)
    相対一括putメソッドです  (オプションの操作)
    相対一括putメソッドです  (オプションの操作)
    バッファの位置を以前にマークした位置に戻します。
    このバッファをリワインド(巻き戻し)します。
    abstract LongBuffer
    このバッファの内容の共有サブシーケンスを内容とする新しいlongバッファを作成します。
    abstract LongBuffer
    slice(int index, int length)
    このバッファの内容の共有サブシーケンスを内容とする新しいlongバッファを作成します。
    このバッファの状態を要約した文字列を返します。
    static LongBuffer
    wrap(long[] array)
    long配列をバッファにラップします。
    static LongBuffer
    wrap(long[] array, int offset, int length)
    long配列をバッファにラップします。

    クラス java.nio.Bufferで宣言されたメソッド

    capacity, hasRemaining, isReadOnly, limit, position, remaining

    クラス java.lang.Objectで宣言されたメソッド

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • メソッドの詳細

    • allocate

      public static LongBuffer allocate(int capacity)
      新しいlongバッファを割り当てます。

      新しいバッファの位置は0になり、その限界はその容量になり、マークは未定義になり、各要素はゼロに初期化され、バイト・オーダーは基礎となるハードウェアのnative orderになります。 補助配列を持ち、配列オフセットはゼロになります。

      パラメータ:
      capacity - 新しいバッファの容量(long)
      戻り値:
      新しいlongバッファ
      例外:
      IllegalArgumentException - capacityが負の整数である場合
    • wrap

      public static LongBuffer wrap(long[] array, int offset, int length)
      long配列をバッファにラップします。

      新しいバッファは指定されたlong配列によって補助されます。バッファに変更を加えると配列も変更され、配列に変更を加えるとバッファも変更されます。 新しいバッファの容量はarray.lengthになり、その位置はoffsetになり、その制限はoffset + lengthになり、そのマークは未定義となり、そのバイト順序は基盤となるハードウェアのnative orderになります。 指定された配列が補助配列となり、その配列オフセットはゼロになります。

      パラメータ:
      array - 新しいバッファを補助する配列
      offset -使用するサブ配列のオフセット。array.length以下の負でない値でなければならない。 新しいバッファの位置は、この値に設定される。
      length - 使用するサブ配列の長さ。array.length - offset以下の負でない値でなければならない。 新しいバッファのリミットは、offset+lengthに設定される。
      戻り値:
      新しいlongバッファ
      例外:
      IndexOutOfBoundsException - offsetパラメータとlengthパラメータの前提条件が満たされていない場合
    • wrap

      public static LongBuffer wrap(long[] array)
      long配列をバッファにラップします。

      新しいバッファは指定されたlong配列によって補助されます。バッファに変更を加えると配列も変更され、配列に変更を加えるとバッファも変更されます。 新しいバッファの容量と限界はarray.lengthになり、その位置はゼロになり、マークは未定義になり、そのバイト・オーダーは基盤となるハードウェアのnative orderになります。 指定された配列が補助配列となり、その配列オフセットはゼロになります。

      パラメータ:
      array - このバッファを補助する配列
      戻り値:
      新しいlongバッファ
    • slice

      public abstract LongBuffer slice()
      このバッファの内容の共有サブシーケンスを内容とする新しいlongバッファを作成します。

      新しいバッファの内容は、このバッファの現在位置から始まります。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。新しいバッファの内容に変更を加えると、その内容がこのバッファに反映されます。2つのバッファの位置、リミット、マークの値はそれぞれ異なります。

      新しいバッファの位置は0になり、その容量と限界はこのバッファに残っているlongの数になり、そのマークは未定義になり、そのバイト順序はこのバッファの順序と同じになります。 新しいバッファは、このバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。また、このバッファが読取り専用バッファである場合にかぎり読取り専用バッファになります。

      定義:
      クラスBufferslice
      戻り値:
      新しいlongバッファ
    • slice

      public abstract LongBuffer slice(int index, int length)
      このバッファの内容の共有サブシーケンスを内容とする新しいlongバッファを作成します。

      新しいバッファの内容は、このバッファ内のindexの位置から始まり、length要素が含まれます。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。新しいバッファの内容に変更を加えると、その内容がこのバッファに反映されます。2つのバッファの位置、リミット、マークの値はそれぞれ異なります。

      新しいバッファ位置はゼロ、容量とリミットはlength、マークは未定義、バイト順序はこのバッファのものと同一です。 新しいバッファは、このバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。また、このバッファが読取り専用バッファである場合にかぎり読取り専用バッファになります。

      定義:
      クラスBufferslice
      パラメータ:
      index - 新しいバッファの内容が開始される、このバッファ内の位置。limit()以外の値である必要があります。
      length - 新規バッファに含まれる要素の数。負以外でlimit() - indexより大きい値である必要があります。
      戻り値:
      新しいバッファ
      例外:
      IndexOutOfBoundsException - indexが、limit()以上の場合、lengthがマイナスまたはlength > limit() - index
      導入されたバージョン:
      13
    • 複製

      public abstract LongBuffer duplicate()
      このバッファの内容を共有する新しいlongバッファを作成します。

      新しいバッファの内容は、このバッファの内容と同じになります。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。新しいバッファの内容に変更を加えると、その内容がこのバッファに反映されます。2つのバッファの位置、リミット、マークの値はそれぞれ異なります。

      新しいバッファ容量、限界、位置、マーク値、およびバイト順は、このバッファのものと同じになります。 新しいバッファは、このバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。また、このバッファが読取り専用バッファである場合にかぎり読取り専用バッファになります。

      定義:
      クラスBufferduplicate
      戻り値:
      新しいlongバッファ
    • asReadOnlyBuffer

      public abstract LongBuffer asReadOnlyBuffer()
      このバッファの内容を共有する新しい読込み専用longバッファを作成します。

      新しいバッファの内容は、このバッファの内容と同じになります。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。しかし、新しいバッファ自体は読取り専用であり、その共有内容を変更することはできません。 2つのバッファの位置、リミット、マークの値はそれぞれ異なります。

      新しいバッファ容量、限界、位置、マーク値、およびバイト順は、このバッファのものと同じになります。

      このバッファ自身が読込み専用の場合は、このメソッドはduplicateと同じように動作します。

      戻り値:
      新しい読込み専用longバッファ
    • get

      public abstract long get()
      相対getメソッドです。 このバッファの現在位置にあるlongを読み込み、現在位置を増加します。
      戻り値:
      バッファの現在位置のlong
      例外:
      BufferUnderflowException - バッファの現在位置がリミット以上である場合
    • put

      public abstract LongBuffer put(long l)
      相対putメソッドです  (オプションの操作)

      このバッファの現在位置に指定されたlongを書き込み、現在位置を増加します。

      パラメータ:
      l - 書き込まれるlong
      戻り値:
      このバッファ
      例外:
      BufferOverflowException - このバッファの現在位置がリミット以上である場合
      ReadOnlyBufferException - このバッファが読込み専用である場合
    • get

      public abstract long get(int index)
      絶対getメソッドです。 指定されたインデックス位置のlongを読み込みます。
      パラメータ:
      index - longの読込み位置を示すインデックス
      戻り値:
      指定されたインデックス位置のlong
      例外:
      IndexOutOfBoundsException - indexが負の数である場合、またはバッファのリミット以上である場合
    • put

      public abstract LongBuffer put(int index, long l)
      絶対putメソッドです  (オプションの操作)

      このバッファの指定されたインデックス位置に指定されたlongを書き込みます。

      パラメータ:
      index - longの書込み先を示すインデックス
      l - 書き込まれるlong値
      戻り値:
      このバッファ
      例外:
      IndexOutOfBoundsException - indexが負の数である場合、またはバッファのリミット以上である場合
      ReadOnlyBufferException - このバッファが読込み専用である場合
    • get

      public LongBuffer get(long[] dst, int offset, int length)
      相対一括getメソッドです。

      このメソッドは、このバッファから指定された配列へlongを転送します。 このバッファ内に残っているlong数が要求に満たない場合(つまり、length > remaining()である場合)、longは一切転送されず、BufferUnderflowExceptionがスローされます。

      それ以外の場合、このメソッドは、length個のlongを、このバッファの現在位置から指定された配列の指定されたオフセット位置へコピーします。 そのたびに、このバッファの位置がlengthずつ増加します。

      このメソッドをsrc.get(dst, off, len)の形式で呼び出すと、次のループとまったく同じ結果になります。

      
           for (int i = off; i < off + len; i++)
               dst[i] = src.get();
       
      ただし、このバッファ内に残っているlongの数が十分であることを最初に確認する動作は除きます。また、このメソッドを使用したほうがループよりもはるかに効率的です。

      パラメータ:
      dst - longの書込み先となる配列
      offset - 最初のlongの書込み先となる配列内のオフセット。dst.length以下の負でない値でなければならない
      length - 指定された配列に書き込まれるlongの最大数。dst.length - offset以下の負でない値でなければならない
      戻り値:
      このバッファ
      例外:
      BufferUnderflowException - このバッファ内に残っているlong数がlengthよりも少ない場合
      IndexOutOfBoundsException - offsetパラメータとlengthパラメータの前提条件が満たされていない場合
    • get

      public LongBuffer get(long[] dst)
      相対一括getメソッドです。

      このメソッドは、このバッファから指定された配列へlongを転送します。 このメソッドをsrc.get(a)の形式で呼び出すと、次の呼び出しと同じ結果になります。

           src.get(a, 0, a.length) 

      パラメータ:
      dst - コピー先配列
      戻り値:
      このバッファ
      例外:
      BufferUnderflowException - このバッファ内に残っているlong数がlengthよりも少ない場合
    • get

      public LongBuffer get(int index, long[] dst, int offset, int length)
      絶対一括getメソッド。

      このメソッドは、このバッファから指定された配列にlengthを長期間転送します。このバッファ内の指定された索引から、配列内の指定されたオフセットから開始します。 このバッファの位置は変わりません。

      フォームsrc.get(index, dst, offset, length)のこのメソッドを起動しても、次のループとまったく同じ効果があります。ただし、最初に提供されたパラメータの一貫性がチェックされ、それがさらに効率的である可能性があります:

      
           for (int i = offset, j = index; i < offset + length; i++, j++)
               dst[i] = src.get(j);
       

      パラメータ:
      index - このバッファ内の最初の長さの読取り元索引。負でない値またはlimit()より小さい値である必要があります。
      dst - コピー先配列
      offset - 最初に書き込まれる長さの配列内のオフセット。dst.lengthより短く、小さくする必要があります。
      length - 指定された配列に書き込まれる長期の数。limit() - indexおよびdst.length - offsetの小さい方より、負でない数である必要があります。
      戻り値:
      このバッファ
      例外:
      IndexOutOfBoundsException - indexoffsetおよびlengthパラメータの事前条件が満たされていない場合、それらを保持しません
      導入されたバージョン:
      13
    • get

      public LongBuffer get(int index, long[] dst)
      絶対一括getメソッド。

      このメソッドは、このバッファから指定された配列へlongを転送します。 このバッファの位置は変わりません。 フォームsrc.get(index, dst)のこのメソッドの起動は、起動とまったく同じ方法で動作します:

           src.get(index, dst, 0, dst.length) 

      パラメータ:
      index - このバッファ内の最初の長さの読取り元索引。負でない値またはlimit()より小さい値である必要があります。
      dst - コピー先配列
      戻り値:
      このバッファ
      例外:
      IndexOutOfBoundsException - indexが負であるか、limit()より小さくないか、またはlimit() - index < dst.lengthの場合
      導入されたバージョン:
      13
    • put

      public LongBuffer put(LongBuffer src)
      相対一括putメソッドです  (オプションの操作)

      このメソッドは、指定されたソース・バッファ内に残っているlongをこのバッファへ転送します。 ソース・バッファ内に残っているlong数がこのバッファ内に残っているlong数よりも多い場合(つまり、src.remaining() > remaining()である場合)、longは一切転送されず、BufferOverflowExceptionがスローされます。

      それ以外の場合、このメソッドは、指定されたバッファの現在位置からこのバッファの現在位置へn = src.remaining()個のlongをコピーします。 そのたびに、両方のバッファの位置がnずつ増加します。

      このメソッドをdst.put(src)の形式で呼び出すと、次のループとまったく同じ結果になります。

           while (src.hasRemaining())
               dst.put(src.get()); 
      ただし、このバッファ内に十分な容量があることを最初に確認する動作は除きます。また、このメソッドを使用したほうがループよりもはるかに効率的です。 このバッファとソース・バッファが同じバッキング配列またはメモリーを共有している場合、結果は、このバッファに書き込まれる前にソース要素が最初に中間のロケーションにコピーされたかのようになります。

      パラメータ:
      src - longの読込み先となるソース・バッファ(このバッファ以外)
      戻り値:
      このバッファ
      例外:
      BufferOverflowException - このバッファに、ソース・バッファ内に残っているlongを格納できるだけの容量がない場合
      IllegalArgumentException - ソース・バッファとしてこのバッファを指定した場合
      ReadOnlyBufferException - このバッファが読込み専用である場合
    • put

      public LongBuffer put(int index, LongBuffer src, int offset, int length)
      (optional operation)の絶対一括putメソッド。

      このメソッドは、ソース・バッファ内の指定されたoffsetおよびこのバッファ内の指定されたindexから、指定されたソース・バッファにlength longを転送します。 両方のバッファの位置は変更されません。

      つまり、dst.put(index, src, offset, length)形式のこのメソッドの呼出しは、ループとまったく同じ効果があります

      
       for (int i = offset, j = index; i < offset + length; i++, j++)
           dst.put(j, src.get(i));
       
      最初に、指定されたパラメータの一貫性をチェックし、より効率的になる可能性があることを除きます。 このバッファとソース・バッファが同じバッキング配列またはメモリーを共有している場合、結果は、このバッファに書き込まれる前にソース要素が最初に中間のロケーションにコピーされたかのようになります。

      パラメータ:
      index - 最初の長さが書き込まれるこのバッファ内のインデックス。limit()以上でない必要があります。
      src - longの読取り元バッファ
      offset - 最初に読み込まれるlongのソース・バッファ内のインデックス。負ではなく、src.limit()より小さい値である必要があります
      length - 指定されたバッファから読み取られるlongの数。limit() - indexおよびsrc.limit() - offsetのいずれか小さい方より小さく、負でない値にする必要があります
      戻り値:
      このバッファ
      例外:
      IndexOutOfBoundsException - indexoffsetおよびlengthパラメータの事前条件が満たされていない場合、それらを保持しません
      ReadOnlyBufferException - このバッファが読込み専用である場合
      導入されたバージョン:
      16
    • put

      public LongBuffer put(long[] src, int offset, int length)
      相対一括putメソッドです  (オプションの操作)

      このメソッドは、指定されたソース配列からこのバッファへlongを転送します。 配列からコピーするlong数がこのバッファ内に残っているlong数より多い場合(つまり、length > remaining()である場合)、longは一切転送されず、BufferOverflowExceptionがスローされます。

      それ以外の場合、このメソッドは、指定された配列の指定されたオフセット位置からこのバッファの現在位置へlength個のlongをコピーします。 そのたびに、このバッファの位置がlengthずつ増加します。

      このメソッドをdst.put(src, off, len)の形式で呼び出すと、次のループとまったく同じ結果になります。

      
           for (int i = off; i < off + len; i++)
               dst.put(src[i]);
       
      ただし、このバッファ内に十分な容量があることを最初に確認する動作は除きます。また、このメソッドを使用したほうがループよりもはるかに効率的です。

      パラメータ:
      src - longの読込み先となる配列
      offset - 読み込まれる最初の長さの配列内のオフセット。負でない値でsrc.lengthより大きい値である必要があります。
      length - 指定された配列から読み取られる長期の数。負でない数で、src.length - offsetより長くない数である必要があります。
      戻り値:
      このバッファ
      例外:
      BufferOverflowException - このバッファ内に残っている容量が不足している場合
      IndexOutOfBoundsException - offsetパラメータとlengthパラメータの前提条件が満たされていない場合
      ReadOnlyBufferException - このバッファが読込み専用である場合
    • put

      public final LongBuffer put(long[] src)
      相対一括putメソッドです  (オプションの操作)

      このメソッドは、ソースとなる指定されたlong配列の内容全体をこのバッファへ転送します。 このメソッドをdst.put(a)の形式で呼び出すと、次の呼び出しと同じ結果になります。

           dst.put(a, 0, a.length) 

      パラメータ:
      src - 転送元配列
      戻り値:
      このバッファ
      例外:
      BufferOverflowException - このバッファ内に残っている容量が不足している場合
      ReadOnlyBufferException - このバッファが読込み専用である場合
    • put

      public LongBuffer put(int index, long[] src, int offset, int length)
      (optional operation)の絶対一括putメソッド。

      このメソッドは、配列内の指定されたオフセットから開始し、このバッファ内の指定されたインデックスからlengthを長期転送します。 このバッファの位置は変わりません。

      フォームdst.put(index, src, offset, length)のこのメソッドを起動しても、次のループとまったく同じ効果があります。ただし、最初に提供されたパラメータの一貫性がチェックされ、それがさらに効率的である可能性があります:

      
           for (int i = offset, j = index; i < offset + length; i++, j++)
               dst.put(j, src[i]);
       

      パラメータ:
      index - 最初の長さが書き込まれるこのバッファ内のインデックス。limit()以上でない必要があります。
      src - longの読込み先となる配列
      offset - 最初に読み込まれるまでの時間の配列内のオフセット。src.lengthより短く、小さくする必要があります。
      length - 指定された配列から読み取られる長期の数。limit() - indexおよびsrc.length - offsetの小さい方より、負でない数である必要があります。
      戻り値:
      このバッファ
      例外:
      IndexOutOfBoundsException - indexoffsetおよびlengthパラメータの事前条件が満たされていない場合、それらを保持しません
      ReadOnlyBufferException - このバッファが読込み専用である場合
      導入されたバージョン:
      13
    • put

      public LongBuffer put(int index, long[] src)
      (optional operation)の絶対一括putメソッド。

      このメソッドは、指定されたソース配列からこのバッファに長期コピーします。 このバッファの位置は変わりません。 フォームdst.put(index, src)のこのメソッドの起動は、起動とまったく同じ方法で動作します:

           dst.put(index, src, 0, src.length); 

      パラメータ:
      index - 最初の長さが書き込まれるこのバッファ内のインデックス。limit()以上でない必要があります。
      src - longの読込み先となる配列
      戻り値:
      このバッファ
      例外:
      IndexOutOfBoundsException - indexが負であるか、limit()より小さくないか、またはlimit() - index < src.lengthの場合
      ReadOnlyBufferException - このバッファが読込み専用である場合
      導入されたバージョン:
      13
    • hasArray

      public final boolean hasArray()
      このバッファがアクセス可能なlong配列に連動するかどうかを判断します。

      このメソッドの戻り値がtrueであれば、arrayおよびarrayOffsetメソッドを安全に呼び出すことができます。

      定義:
      hasArray、クラス: Buffer
      戻り値:
      このバッファが配列に連動しており、読取り専用でない場合にかぎりtrue
    • array

      public final long[] array()
      このバッファを補助するlong配列を返します  (オプションの操作)

      このバッファの内容に変更を加えると、返される配列の内容も変更されます。その逆も同様です。

      このメソッドを呼び出す前にhasArrayメソッドを呼び出し、このバッファがアクセス可能な補助配列を持っていることを確認します。

      定義:
      array、クラス: Buffer
      戻り値:
      このバッファを補助する配列
      例外:
      ReadOnlyBufferException - このバッファが配列に連動しており、しかも読込み専用である場合
      UnsupportedOperationException - このバッファがアクセス可能な配列を利用しない場合
    • arrayOffset

      public final int arrayOffset()
      このバッファの補助配列内にある、このバッファの最初の要素のオフセットを返します  (オプションの操作)

      このバッファが配列に連動していれば、その位置pが配列のインデックスp + arrayOffset()と一致します。

      このメソッドを呼び出す前にhasArrayメソッドを呼び出し、このバッファがアクセス可能な補助配列を持っていることを確認します。

      定義:
      arrayOffset、クラス: Buffer
      戻り値:
      このバッファの配列内にある、このバッファの最初の要素のオフセット
      例外:
      ReadOnlyBufferException - このバッファが配列に連動しており、しかも読込み専用である場合
      UnsupportedOperationException - このバッファがアクセス可能な配列を利用しない場合
    • position

      public final LongBuffer position(int newPosition)
      このバッファの位置を設定します。 新しい位置の値よりもマークの値のほうが大きい場合、マークの定義は破棄されます。
      オーバーライド:
      クラスBufferposition
      パラメータ:
      newPosition - 新しい位置の値は、現在のリミット以下の負でない値でなければならない
      戻り値:
      このバッファ
    • limit

      public final LongBuffer limit(int newLimit)
      このバッファのリミットを設定します。 位置の値が新しいリミットより大きい場合、リミットと同じ値に変更されます。 マークの値が新しいリミットより大きい場合、マークの定義は破棄されます。
      オーバーライド:
      クラスBufferlimit
      パラメータ:
      newLimit - 新しいリミット値は、このバッファの容量以下の負でない値でなければならない
      戻り値:
      このバッファ
    • mark

      public final LongBuffer mark()
      このバッファの現在位置にマークを設定します。
      オーバーライド:
      クラスBuffermark
      戻り値:
      このバッファ
    • reset

      public final LongBuffer reset()
      バッファの位置を以前にマークした位置に戻します。

      このメソッドを呼び出しても、マークの値は変更されません。マークが破棄されることもありません。

      オーバーライド:
      クラスBufferreset
      戻り値:
      このバッファ
    • clear

      public final LongBuffer clear()
      このバッファをクリアします。 バッファの位置はゼロ、リミットは容量の値に設定されます。マークは破棄されます。

      一連のチャネル読込み操作または「put」操作を使用してこのバッファにデータを格納する前に、このメソッドを呼び出します。 次に例を示します。

       buf.clear();     // Prepare buffer for reading
       in.read(buf);    // Read data

      このメソッドはバッファ内のデータを実際に消去するわけではありません。しかし、そうした状況で使用されるため、クリアと命名されています。

      オーバーライド:
      クラスBufferclear
      戻り値:
      このバッファ
    • flip

      public final LongBuffer flip()
      このバッファをフリップ(反転)します。 リミットは現在位置の値に設定され、現在位置を表す値はゼロに設定されます。 マークが定義されている場合、そのマークは破棄されます。

      一連のチャネル読込み操作(put)のあと、このメソッドを呼び出してチャネル書込み操作(相対「get」)の準備を行います。 次に例を示します。

       buf.put(magic);    // Prepend header
       in.read(buf);      // Read data into rest of buffer
       buf.flip();        // Flip buffer
       out.write(buf);    // Write header + data to channel

      ある場所から別の場所にデータを転送する際、このメソッドをcompactメソッドと組み合わせて使用することがあります。

      オーバーライド:
      クラスBufferflip
      戻り値:
      このバッファ
    • rewind

      public final LongBuffer rewind()
      このバッファをリワインド(巻き戻し)します。 位置はゼロに設定され、マークは破棄されます。

      このメソッドは、リミットを正しく設定したあと、一連のチャネル書込み操作(get)の前に呼び出します。 次に例を示します。

       out.write(buf);    // Write remaining data
       buf.rewind();      // Rewind buffer
       buf.get(array);    // Copy data into array

      オーバーライド:
      クラスBufferrewind
      戻り値:
      このバッファ
    • compact

      public abstract LongBuffer compact()
      このバッファを圧縮します  (オプションの操作)

      バッファの現在位置からリミットまでの間にlongが存在する場合、これらをバッファの先頭にコピーします。 つまり、インデックス位置p = position()のlongがインデックス・ゼロにコピーされ、インデックス位置p + 1のlongがインデックス1にコピーされるということです。インデックス位置limit() - 1のlongがインデックスn = limit() - 1 - pにコピーされるまで、同様の処理が繰り返されます。 最終的にバッファの位置はn+1に設定され、リミットは容量の値と等しくなります。 マークは破棄されます。

      バッファの位置は、ゼロではなく、コピーされるlongの数と等しくなります。したがって、このメソッドを呼び出したあと、すぐに別の相対「put」メソッドを呼び出すことができます。

      戻り値:
      このバッファ
      例外:
      ReadOnlyBufferException - このバッファが読込み専用である場合
    • isDirect

      public abstract boolean isDirect()
      現在のlongバッファがダイレクト・バッファであるかどうかを判断します。
      定義:
      isDirect、クラス: Buffer
      戻り値:
      このバッファがダイレクト・バッファである場合にかぎりtrue
    • toString

      public String toString()
      このバッファの状態を要約した文字列を返します。
      オーバーライド:
      toString 、クラス:  Object
      戻り値:
      サマリー文字列
    • hashCode

      public int hashCode()
      このバッファの現在のハッシュ・コードを返します。

      longバッファのハッシュ・コードは、バッファ内に残っている要素、すなわちposition()からlimit() - 1までの要素のみに依存します。

      バッファのハッシュ・コードは内容依存型です。今後バッファの内容が変更されないことが明らかでないかぎり、バッファをハッシュ・マップその他のデータ構造のキーとして使用することは避けてください。

      オーバーライド:
      hashCode 、クラス:  Object
      戻り値:
      このバッファの現在のハッシュ・コード
      関連項目:
    • equals

      public boolean equals(Object ob)
      このバッファが別のオブジェクトと等価であるかどうかを判断します。

      2つのlongバッファは、次の場合にかぎり等価です。

      1. 要素の型が同じである

      2. バッファ内に残っている要素数が同じである

      3. バッファ内に残っている要素のシーケンス(開始位置とは無関係)が各点で等しい(pointwise equal)

      longバッファが、その他の型のオブジェクトと等価になることはありません。

      オーバーライド:
      equals 、クラス:  Object
      パラメータ:
      ob - このバッファと比較するオブジェクト
      戻り値:
      このバッファが指定されたオブジェクトと等価である場合にかぎりtrue
      関連項目:
    • compareTo

      public int compareTo(LongBuffer that)
      このバッファを別のバッファと比較します。

      2つのlongバッファを比較する際は、バッファ内に残っている要素のシーケンスが辞書順に比較されます。このとき、双方のバッファ内に残っているシーケンスの開始位置は考慮されません。 Long.compare(long,long)を呼び出したかのように、long要素のペアが比較されます。

      longバッファとその他の型のオブジェクトを比較することはできません。

      定義:
      compareTo、インタフェース: Comparable<LongBuffer>
      パラメータ:
      that - 比較対象のオブジェクト。
      戻り値:
      このバッファが指定されたバッファより小さい場合は負の整数、等しい場合はゼロ、大きい場合は正の整数
    • mismatch

      public int mismatch(LongBuffer that)
      このバッファと指定されたバッファの最初の不一致の相対索引を検索して戻します。 インデックスは各バッファのpositionに相対的であり、各バッファ(inclusive)の範囲が各バッファremainingの範囲内で小さくなる。

      2つのバッファが共通プレフィクスを共有している場合、戻される索引は共通プレフィクスの長さとなり、各バッファ内のその索引の2つのバッファ間に不一致があることに従います。 一方のバッファがもう一方のバッファのプレフィクスである場合、戻された索引は各バッファ内の残りの要素の小さい方になり、残りの要素の数が多いバッファに対してのみ索引が有効になります。 それ以外の場合は、不一致はありません。

      パラメータ:
      that - このバッファと不一致をテストするためのバイト・バッファ
      戻り値:
      このバッファと指定されたバッファの最初の不一致の相対索引です。一致しない場合は -1です。
      導入されたバージョン:
      11
    • order

      public abstract ByteOrder order()
      このバッファのbyte順序を取得します。

      割り当てまたは既存のlong配列のラップによって作成されたlongバッファのbyte順序は、基礎となるハードウェアのネイティブ順序と同じになります。 byteバッファのビューとして作成されたlongバッファのbyte順序は、ビューを作成した時点のbyteバッファのbyte順序と同じになります。

      戻り値:
      このバッファのbyte順序