- java.lang.Object
- 
- java.nio.Buffer
- 
- java.nio.IntBuffer
 
 
- 
- すべての実装されたインタフェース:
- Comparable<IntBuffer>
 
 public abstract class IntBuffer extends Buffer implements Comparable<IntBuffer> intバッファです。このクラスは、intバッファに対する操作を4つのカテゴリに分類します。 
- 連続したintシーケンスをこのバッファから配列へと転送する相対 - 一括getメソッド。
- 連続したintシーケンスをint配列やその他のintバッファからこのバッファへと転送する相対 - 一括putメソッド。
- compactingとintバッファのメソッド。
 intバッファを作成するには、バッファの内容に容量を割り当てる 割り当てを実行するか、既存のint配列をバッファ内にラップするか、既存のbyteバッファのビューを作成します。byteバッファと同様に、intバッファにも「ダイレクト」と「非ダイレクト」があります。 このクラスの wrapメソッドで作成されたintバッファは非ダイレクト・バッファになります。 byteバッファのビューとして作成されたintバッファは、byteバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。 intバッファがダイレクト・バッファかどうかは、isDirectメソッドの呼出しによって判断できます。このクラスのメソッドのうち戻り値を返さないものは、自身を呼び出したバッファの情報を返します。 これを応用して、メソッド呼出しを連鎖させることができます。 - 導入されたバージョン:
- 1.4
 
- 
- 
メソッドのサマリーすべてのメソッド staticメソッド インスタンス・メソッド 抽象メソッド 具象メソッド 修飾子と型 メソッド 説明 static IntBufferallocate(int capacity)新しいintバッファを割り当てます。int[]array()このバッファを補助するint配列を返します (オプションの操作)。intarrayOffset()このバッファの補助配列内にある、このバッファの最初の要素のオフセットを返します (オプションの操作)。abstract IntBufferasReadOnlyBuffer()このバッファの内容を共有する新しい読込み専用intバッファを作成します。abstract IntBuffercompact()このバッファを圧縮します (オプションの操作)。intcompareTo(IntBuffer that)このバッファを別のバッファと比較します。abstract IntBufferduplicate()このバッファの内容を共有する新しいintバッファを作成します。booleanequals(Object ob)このバッファが別のオブジェクトと等価であるかどうかを判断します。abstract intget()相対getメソッドです。abstract intget(int index)絶対getメソッドです。IntBufferget(int[] dst)相対一括getメソッドです。IntBufferget(int[] dst, int offset, int length)相対一括getメソッドです。booleanhasArray()このバッファがアクセス可能なint配列に連動するかどうかを判断します。inthashCode()このバッファの現在のハッシュ・コードを返します。abstract booleanisDirect()現在のintバッファがダイレクト・バッファであるかどうかを判断します。intmismatch(IntBuffer that)このバッファと指定されたバッファの最初の不一致の相対索引を検索して戻します。abstract ByteOrderorder()このバッファのbyte順序を取得します。abstract IntBufferput(int i)相対putメソッドです (オプションの操作)。IntBufferput(int[] src)相対一括putメソッドです (オプションの操作)。IntBufferput(int[] src, int offset, int length)相対一括putメソッドです (オプションの操作)。abstract IntBufferput(int index, int i)絶対putメソッドです (オプションの操作)。IntBufferput(IntBuffer src)相対一括putメソッドです (オプションの操作)。abstract IntBufferslice()このバッファの内容の共有のサブシーケンスを内容とする新しいintバッファを作成します。StringtoString()このバッファの状態を要約した文字列を返します。static IntBufferwrap(int[] array)int配列をバッファにラップします。static IntBufferwrap(int[] array, int offset, int length)int配列をバッファにラップします。
 
- 
- 
- 
メソッドの詳細- 
allocatepublic static IntBuffer allocate(int capacity) 新しいintバッファを割り当てます。新しいバッファの位置は0になり、その限界はその容量になり、マークは未定義になり、各要素はゼロに初期化され、バイト・オーダーは基礎となるハードウェアの native orderになります。backing arrayがあり、そのarray offsetはゼロになります。- パラメータ:
- capacity- 新しいバッファの容量(int)
- 戻り値:
- 新しいintバッファ
- 例外:
- IllegalArgumentException-- capacityが負の整数である場合
 
 - 
wrappublic static IntBuffer wrap(int[] array, int offset, int length) int配列をバッファにラップします。新しいバッファは指定されたint配列によって補助されます。バッファに変更を加えると配列も変更され、配列に変更を加えるとバッファも変更されます。 新しいバッファの容量は array.lengthになり、その位置はoffsetになり、その制限はoffset + lengthになり、そのマークは未定義となり、そのバイト順序は基盤となるハードウェアのnative orderになります。 そのbacking arrayは指定された配列になり、そのarray offsetはゼロになります。- パラメータ:
- array- 新しいバッファを補助する配列
- offset-使用するサブ配列のオフセット。- array.length以下の負でない値でなければならない。 新しいバッファの位置は、この値に設定される。
- length- 使用するサブ配列の長さ。- array.length - offset以下の負でない値でなければならない。 新しいバッファのリミットは、- offset+lengthに設定される。
- 戻り値:
- 新しいintバッファ
- 例外:
- IndexOutOfBoundsException-- offsetパラメータと- lengthパラメータの前提条件が満たされていない場合
 
 - 
wrappublic static IntBuffer wrap(int[] array) int配列をバッファにラップします。新しいバッファは指定されたint配列によって補助されます。バッファに変更を加えると配列も変更され、配列に変更を加えるとバッファも変更されます。 新しいバッファの容量と限界は array.lengthになり、その位置はゼロになり、マークは未定義になり、そのバイト・オーダーは基盤となるハードウェアのnative orderになります。 そのbacking arrayは指定された配列になり、そのarray offsetはゼロになります。- パラメータ:
- array- このバッファを補助する配列
- 戻り値:
- 新しいintバッファ
 
 - 
slicepublic abstract IntBuffer slice() このバッファの内容の共有のサブシーケンスを内容とする新しいintバッファを作成します。新しいバッファの内容は、このバッファの現在位置から始まります。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。新しいバッファの内容に変更を加えると、その内容がこのバッファに反映されます。2つのバッファの位置、リミット、マークの値はそれぞれ異なります。 新しいバッファの位置はゼロになり、その容量とその制限はこのバッファに残っているintの数になり、そのマークは未定義になり、そのバイト順序はこのバッファの順序と同じになります。 新しいバッファは、このバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。また、このバッファが読取り専用バッファである場合にかぎり読取り専用バッファになります。 
 - 
duplicatepublic abstract IntBuffer duplicate() このバッファの内容を共有する新しいintバッファを作成します。新しいバッファの内容は、このバッファの内容と同じになります。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。新しいバッファの内容に変更を加えると、その内容がこのバッファに反映されます。2つのバッファの位置、リミット、マークの値はそれぞれ異なります。 新しいバッファ容量、限界、位置、マーク値、およびバイト順は、このバッファのものと同じになります。 新しいバッファは、このバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。また、このバッファが読取り専用バッファである場合にかぎり読取り専用バッファになります。 
 - 
asReadOnlyBufferpublic abstract IntBuffer asReadOnlyBuffer() このバッファの内容を共有する新しい読込み専用intバッファを作成します。新しいバッファの内容は、このバッファの内容と同じになります。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。しかし、新しいバッファ自体は読取り専用であり、その共有内容を変更することはできません。 2つのバッファの位置、リミット、マークの値はそれぞれ異なります。 新しいバッファ容量、限界、位置、マーク値、およびバイト順は、このバッファのものと同じになります。 このバッファ自身が読込み専用の場合は、このメソッドは duplicateと同じように動作します。- 戻り値:
- 新しい読込み専用intバッファ
 
 - 
getpublic abstract int get() 相対getメソッドです。 このバッファの現在位置のintを読み込み、現在位置を増加します。- 戻り値:
- バッファの現在位置のint
- 例外:
- BufferUnderflowException- バッファの現在位置がリミット以上である場合
 
 - 
putpublic abstract IntBuffer put(int i) 相対putメソッドです (オプションの操作)。このバッファの現在位置に指定されたintを書き込み、現在位置を増加します。 - パラメータ:
- i- 書き込まれるint
- 戻り値:
- このバッファ
- 例外:
- BufferOverflowException- このバッファの現在位置がリミット以上である場合
- ReadOnlyBufferException- このバッファが読込み専用である場合
 
 - 
getpublic abstract int get(int index) 絶対getメソッドです。 指定されたインデックス位置のintを読み込みます。- パラメータ:
- index- intの読込み位置を示すインデックス
- 戻り値:
- 指定されたインデックス位置のint
- 例外:
- IndexOutOfBoundsException-- indexが負の数である場合、またはバッファのリミット以上である場合
 
 - 
putpublic abstract IntBuffer put(int index, int i) 絶対putメソッドです (オプションの操作)。このバッファの指定されたインデックス位置に指定されたintを書き込みます。 - パラメータ:
- index- intの書込み先を示すインデックス
- i- 書き込まれるint値
- 戻り値:
- このバッファ
- 例外:
- IndexOutOfBoundsException-- indexが負の数である場合、またはバッファのリミット以上である場合
- ReadOnlyBufferException- このバッファが読込み専用である場合
 
 - 
getpublic IntBuffer get(int[] dst, int offset, int length) 相対一括getメソッドです。このメソッドは、このバッファから指定された配列へintを転送します。 このバッファ内に残っているint数が要求に満たない場合(つまり、 length>remaining()である場合)、intは一切転送されず、BufferUnderflowExceptionがスローされます。それ以外の場合、このメソッドは、 length個のintを、このバッファの現在位置から指定された配列の指定されたオフセット位置へコピーします。 そのたびに、このバッファの位置がlengthずつ増加します。このメソッドを src.get(dst, off, len)の形式で呼び出すと、次のループとまったく同じ結果になります。
 ただし、このバッファ内に十分な数のintが存在することを最初に確認する動作は除きます。また、このメソッドを使用したほうがループよりもはるかに効率的です。for (int i = off; i < off + len; i++) dst[i] = src.get();- パラメータ:
- dst- intの書込み先となる配列
- offset- 最初のintの書込み先となる配列内のオフセット。- dst.length以下の負でない値でなければならない
- length- 指定された配列に書き込まれるintの最大数。- dst.length - offset以下の負でない値でなければならない
- 戻り値:
- このバッファ
- 例外:
- BufferUnderflowException- このバッファ内に残っているint数が- lengthよりも少ない場合
- IndexOutOfBoundsException-- offsetパラメータと- lengthパラメータの前提条件が満たされていない場合
 
 - 
getpublic IntBuffer get(int[] dst) 相対一括getメソッドです。このメソッドは、このバッファから指定された配列へintを転送します。 このメソッドを src.get(a)の形式で呼び出すと、次の呼び出しと同じ結果になります。src.get(a, 0, a.length)- パラメータ:
- dst- コピー先配列
- 戻り値:
- このバッファ
- 例外:
- BufferUnderflowException- このバッファ内に残っているint数が- lengthよりも少ない場合
 
 - 
putpublic IntBuffer put(IntBuffer src) 相対一括putメソッドです (オプションの操作)。このメソッドは、指定されたソース・バッファ内に残っているintをこのバッファへ転送します。 ソース・バッファ内に残っているint数がこのバッファ内に残っているint数よりも多い場合(つまり、 src.remaining()>remaining()である場合)、intは一切転送されず、BufferOverflowExceptionがスローされます。それ以外の場合、このメソッドは、指定されたバッファの現在位置からこのバッファの現在位置へn = src.remaining()個のintをコピーします。 そのたびに、両方のバッファの位置がnずつ増加します。このメソッドを dst.put(src)の形式で呼び出すと、次のループとまったく同じ結果になります。while (src.hasRemaining()) dst.put(src.get());ただし、このバッファ内に十分な容量があることを最初に確認する動作は除きます。また、このメソッドを使用したほうがループよりもはるかに効率的です。 このバッファとソース・バッファが同じバッキング配列またはメモリーを共有している場合、結果は、このバッファに書き込まれる前にソース要素が最初に中間のロケーションにコピーされたかのようになります。- パラメータ:
- src- intの読込み先となるソース・バッファ(このバッファ以外)
- 戻り値:
- このバッファ
- 例外:
- BufferOverflowException- このバッファに、ソース・バッファ内に残っているintを格納できるだけの容量がない場合
- IllegalArgumentException- ソース・バッファとしてこのバッファを指定した場合
- ReadOnlyBufferException- このバッファが読込み専用である場合
 
 - 
putpublic IntBuffer put(int[] src, int offset, int length) 相対一括putメソッドです (オプションの操作)。このメソッドは、指定されたソース配列からこのバッファへintを転送します。 配列からコピーするint数がこのバッファ内に残っているint数より多い場合(つまり、 length>remaining()である場合)、intは一切転送されず、BufferOverflowExceptionがスローされます。それ以外の場合、このメソッドは、指定された配列の指定されたオフセット位置からこのバッファの現在位置へ length個のintをコピーします。 そのたびに、このバッファの位置がlengthずつ増加します。このメソッドを dst.put(src, off, len)の形式で呼び出すと、次のループとまったく同じ結果になります。
 ただし、このバッファ内に十分な容量があることを最初に確認する動作は除きます。また、このメソッドを使用したほうがループよりもはるかに効率的です。for (int i = off; i < off + len; i++) dst.put(a[i]);- パラメータ:
- src- intの読込み先となる配列
- offset- 最初のintの読込み先となる配列内のオフセット。- array.length以下の負でない値にする必要がある
- length- 指定された配列から読み取られるintの数。- array.length - offset以下の負でない値でなければならない
- 戻り値:
- このバッファ
- 例外:
- BufferOverflowException- このバッファ内に残っている容量が不足している場合
- IndexOutOfBoundsException-- offsetパラメータと- lengthパラメータの前提条件が満たされていない場合
- ReadOnlyBufferException- このバッファが読込み専用である場合
 
 - 
putpublic final IntBuffer put(int[] src) 相対一括putメソッドです (オプションの操作)。このメソッドは、ソースとなる指定されたint配列の内容全体をこのバッファへ転送します。 このメソッドを dst.put(a)の形式で呼び出すと、次の呼び出しと同じ結果になります。dst.put(a, 0, a.length)- パラメータ:
- src- 転送元配列
- 戻り値:
- このバッファ
- 例外:
- BufferOverflowException- このバッファ内に残っている容量が不足している場合
- ReadOnlyBufferException- このバッファが読込み専用である場合
 
 - 
hasArraypublic final boolean hasArray() このバッファがアクセス可能なint配列に連動するかどうかを判断します。このメソッドの戻り値が trueであれば、arrayおよびarrayOffsetメソッドを安全に呼び出すことができます。
 - 
arraypublic final int[] array() このバッファを補助するint配列を返します (オプションの操作)。このバッファの内容に変更を加えると、返される配列の内容も変更されます。その逆も同様です。 このメソッドを呼び出す前に hasArrayメソッドを呼び出し、このバッファがアクセス可能な補助配列を持っていることを確認します。- 定義:
- array、クラス- Buffer
- 戻り値:
- このバッファを補助する配列
- 例外:
- ReadOnlyBufferException- このバッファが配列に連動しており、しかも読込み専用である場合
- UnsupportedOperationException- このバッファがアクセス可能な配列を利用しない場合
 
 - 
arrayOffsetpublic final int arrayOffset() このバッファの補助配列内にある、このバッファの最初の要素のオフセットを返します (オプションの操作)。このバッファが配列に連動していれば、その位置pが配列のインデックスp + arrayOffset()と一致します。このメソッドを呼び出す前に hasArrayメソッドを呼び出し、このバッファがアクセス可能な補助配列を持っていることを確認します。- 定義:
- arrayOffset、クラス- Buffer
- 戻り値:
- このバッファの配列内にある、このバッファの最初の要素のオフセット
- 例外:
- ReadOnlyBufferException- このバッファが配列に連動しており、しかも読込み専用である場合
- UnsupportedOperationException- このバッファがアクセス可能な配列を利用しない場合
 
 - 
compactpublic abstract IntBuffer compact() このバッファを圧縮します (オプションの操作)。バッファの現在位置からリミットまでの間にintが存在する場合、これらをバッファの先頭にコピーします。 つまり、インデックス位置p = position()のintがインデックス・ゼロにコピーされ、インデックス位置p + 1のintがインデックス1にコピーされるということです。インデックス位置limit()- 1のintがインデックスn =limit()-1- pにコピーされるまで、同様の処理が繰り返されます。 最終的にバッファの位置はn+1に設定され、リミットは容量の値と等しくなります。 マークは破棄されます。バッファの位置は、ゼロではなく、コピーされるintの数と等しくなります。したがって、このメソッドを呼び出したあと、すぐに別の相対「put」メソッドを呼び出すことができます。 - 戻り値:
- このバッファ
- 例外:
- ReadOnlyBufferException- このバッファが読込み専用である場合
 
 - 
isDirectpublic abstract boolean isDirect() 現在のintバッファがダイレクト・バッファであるかどうかを判断します。
 - 
hashCodepublic int hashCode() このバッファの現在のハッシュ・コードを返します。intバッファのハッシュ・コードは、バッファ内に残っている要素、すなわち position()からlimit()-1までの要素のみに依存します。バッファのハッシュ・コードは内容依存型です。今後バッファの内容が変更されないことが明らかでないかぎり、バッファをハッシュ・マップその他のデータ構造のキーとして使用することは避けてください。 - オーバーライド:
- hashCode、クラス- Object
- 戻り値:
- このバッファの現在のハッシュ・コード
- 関連項目:
- Object.equals(java.lang.Object),- System.identityHashCode(java.lang.Object)
 
 - 
equalspublic boolean equals(Object ob) このバッファが別のオブジェクトと等価であるかどうかを判断します。2つのintバッファは、次の場合にかぎり等価です。 - 要素の型が同じである 
- バッファ内に残っている要素数が同じである 
- バッファ内に残っている要素のシーケンス(開始位置とは無関係)が各点で等しい(pointwise equal) 
 intバッファが、その他の型のオブジェクトと等価になることはありません。 - オーバーライド:
- equals、クラス- Object
- パラメータ:
- ob- このバッファと比較するオブジェクト
- 戻り値:
- このバッファが指定されたオブジェクトと等価である場合にかぎりtrue
- 関連項目:
- Object.hashCode()、- HashMap
 
 - 
compareTopublic int compareTo(IntBuffer that) このバッファを別のバッファと比較します。2つのintバッファを比較する際は、バッファ内に残っている要素のシーケンスが辞書順に比較されます。このとき、双方のバッファ内に残っているシーケンスの開始位置は考慮されません。 Integer.compare(int,int)を呼び出したかのように、int要素のペアが比較されます。intバッファとその他の型のオブジェクトを比較することはできません。 - 定義:
- compareTo、インタフェース- Comparable<IntBuffer>
- パラメータ:
- that- 比較対象のオブジェクト。
- 戻り値:
- このバッファが指定されたバッファより小さい場合は負の整数、等しい場合はゼロ、大きい場合は正の整数
 
 - 
mismatchpublic int mismatch(IntBuffer that) このバッファと指定されたバッファの最初の不一致の相対索引を検索して戻します。 インデックスは各バッファのpositionに相対的であり、各バッファ(inclusive)の範囲が各バッファremainingの範囲内で小さくなる。2つのバッファが共通プレフィクスを共有している場合、戻される索引は共通プレフィクスの長さとなり、各バッファ内のその索引の2つのバッファ間に不一致があることに従います。 一方のバッファがもう一方のバッファのプレフィクスである場合、戻された索引は各バッファ内の残りの要素の小さい方になり、残りの要素の数が多いバッファに対してのみ索引が有効になります。 それ以外の場合は、不一致はありません。 - パラメータ:
- that- このバッファと不一致をテストするためのバイト・バッファ
- 戻り値:
- このバッファと指定されたバッファの最初の不一致の相対索引です。一致しない場合は -1です。
- 導入されたバージョン:
- 11
 
 
- 
 
-