- すべての実装されたインタフェース:
Comparable<ShortBuffer>
このクラスは、shortバッファに対する操作を4つのカテゴリに分類します。
このバッファから配列に連続した短いシーケンスを転送する、絶対および相対的な
bulk get
メソッド短い配列またはその他の短いバッファからこのバッファに連続したショート・シーケンスを転送する、絶対および相対的な
bulk put
メソッドショート・バッファの
compacting
のメソッド。
shortバッファを作成するには、バッファの内容に容量を割り当てる割り当て
を実行するか、既存のshort配列をバッファ内にラップ
するか、既存のbyteバッファのビューを作成します。
byteバッファと同様に、shortバッファにも「ダイレクト」と「非ダイレクト」があります。 このクラスのwrap
メソッドを介して作成された短いバッファは、ダイレクトではありません。 byteバッファのビューとして作成されたshortバッファは、byteバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。 shortバッファがダイレクト・バッファかどうかは、isDirect
メソッドの呼出しによって判断できます。
このクラスのメソッドのうち戻り値を返さないものは、自身を呼び出したバッファの情報を返します。 これを応用して、メソッド呼出しを連鎖させることができます。
- 導入されたバージョン:
- 1.4
-
メソッドのサマリー
修飾子と型メソッド説明static ShortBuffer
allocate
(int capacity) 新しいshortバッファを割り当てます。final short[]
array()
このバッファを補助するshort配列を返します (オプションの操作)。final int
このバッファの補助配列内にある、このバッファの最初の要素のオフセットを返します (オプションの操作)。abstract ShortBuffer
このバッファの内容を共有する新しい読込み専用shortバッファを作成します。final ShortBuffer
clear()
このバッファをクリアします。abstract ShortBuffer
compact()
このバッファを圧縮します (オプションの操作)。int
compareTo
(ShortBuffer that) このバッファを別のバッファと比較します。abstract ShortBuffer
このバッファの内容を共有する新しいshortバッファを作成します。boolean
このバッファが別のオブジェクトと等価であるかどうかを判断します。final ShortBuffer
flip()
このバッファをフリップ(反転)します。abstract short
get()
相対getメソッドです。abstract short
get
(int index) 絶対getメソッドです。get
(int index, short[] dst) 絶対一括getメソッド。get
(int index, short[] dst, int offset, int length) 絶対一括getメソッド。get
(short[] dst) 相対一括getメソッドです。get
(short[] dst, int offset, int length) 相対一括getメソッドです。final boolean
hasArray()
このバッファがアクセス可能なshort配列に連動するかどうかを判断します。int
hashCode()
このバッファの現在のハッシュ・コードを返します。abstract boolean
isDirect()
現在のshortバッファがダイレクト・バッファであるかどうかを判断します。final ShortBuffer
limit
(int newLimit) このバッファのリミットを設定します。final ShortBuffer
mark()
このバッファの現在位置にマークを設定します。int
mismatch
(ShortBuffer that) このバッファと指定されたバッファの最初の不一致の相対索引を検索して戻します。abstract ByteOrder
order()
このバッファのbyte順序を取得します。final ShortBuffer
position
(int newPosition) このバッファの位置を設定します。abstract ShortBuffer
put
(int index, short s) 絶対putメソッドです (オプションの操作)。put
(int index, short[] src) (optional operation)の絶対一括putメソッド。put
(int index, short[] src, int offset, int length) (optional operation)の絶対一括putメソッド。put
(int index, ShortBuffer src, int offset, int length) (optional operation)の絶対一括putメソッド。abstract ShortBuffer
put
(short s) 相対putメソッドです (オプションの操作)。final ShortBuffer
put
(short[] src) 相対一括putメソッドです (オプションの操作)。put
(short[] src, int offset, int length) 相対一括putメソッドです (オプションの操作)。put
(ShortBuffer src) 相対一括putメソッドです (オプションの操作)。final ShortBuffer
reset()
バッファの位置を以前にマークした位置に戻します。final ShortBuffer
rewind()
このバッファをリワインド(巻き戻し)します。abstract ShortBuffer
slice()
このバッファの内容の共有サブシーケンスを内容とする新しいshortバッファを作成します。abstract ShortBuffer
slice
(int index, int length) このバッファの内容の共有サブシーケンスを内容とする新しいshortバッファを作成します。toString()
このバッファの状態を要約した文字列を返します。static ShortBuffer
wrap
(short[] array) short配列をバッファにラップします。static ShortBuffer
wrap
(short[] array, int offset, int length) short配列をバッファにラップします。クラス java.nio.Bufferで宣言されたメソッド
capacity, hasRemaining, isReadOnly, limit, position, remaining
-
メソッドの詳細
-
allocate
public static ShortBuffer allocate(int capacity) 新しいshortバッファを割り当てます。新しいバッファの位置は0になり、その限界はその容量になり、マークは未定義になり、各要素はゼロに初期化され、バイト・オーダーは基礎となるハードウェアの
native order
になります。補助配列
を持ち、配列オフセット
はゼロになります。- パラメータ:
capacity
- 新しいバッファの容量(short)- 戻り値:
- 新しいshortバッファ
- 例外:
IllegalArgumentException
-capacity
が負の整数である場合
-
wrap
public static ShortBuffer wrap(short[] array, int offset, int length) short配列をバッファにラップします。新しいバッファは指定されたshort配列によって補助されます。バッファに変更を加えると配列も変更され、配列に変更を加えるとバッファも変更されます。 新しいバッファの容量は
array.length
になり、その位置はoffset
になり、その制限はoffset + length
になり、そのマークは未定義となり、そのバイト順序は基盤となるハードウェアのnative order
になります。 指定された配列が補助配列
となり、その配列オフセット
はゼロになります。- パラメータ:
array
- 新しいバッファを補助する配列offset
- 使用するサブ配列のオフセット。負以外で、array.length
以下である必要があります。 新しいバッファの位置は、この値に設定される。length
- 使用するサブ配列の長さ。負以外で、array.length - offset
以下である必要があります。 新しいバッファの制限はoffset + length
に設定されます。- 戻り値:
- 新しいshortバッファ
- 例外:
IndexOutOfBoundsException
-offset
パラメータとlength
パラメータの前提条件が満たされていない場合
-
wrap
public static ShortBuffer wrap(short[] array) short配列をバッファにラップします。新しいバッファは指定されたshort配列によって補助されます。バッファに変更を加えると配列も変更され、配列に変更を加えるとバッファも変更されます。 新しいバッファの容量と限界は
array.length
になり、その位置はゼロになり、マークは未定義になり、そのバイト・オーダーは基盤となるハードウェアのnative order
になります。 指定された配列が補助配列
となり、その配列オフセット
はゼロになります。- パラメータ:
array
- このバッファを補助する配列- 戻り値:
- 新しいshortバッファ
-
slice
public abstract ShortBuffer slice()このバッファの内容の共有サブシーケンスを内容とする新しいshortバッファを作成します。新しいバッファの内容は、このバッファの現在位置から始まります。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。新しいバッファの内容に変更を加えると、その内容がこのバッファに反映されます。2つのバッファの位置、リミット、マークの値はそれぞれ異なります。
新しいバッファの位置はゼロになり、その容量と限界はこのバッファに残っているshortの数になり、そのマークは未定義になり、そのバイト順序はこのバッファの順序と同じになります。 新しいバッファは、このバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。また、このバッファが読取り専用バッファである場合にかぎり読取り専用バッファになります。
-
slice
public abstract ShortBuffer slice(int index, int length) このバッファの内容の共有サブシーケンスを内容とする新しいshortバッファを作成します。新しいバッファの内容は、このバッファ内の
index
の位置から始まり、length
要素が含まれます。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。新しいバッファの内容に変更を加えると、その内容がこのバッファに反映されます。2つのバッファの位置、リミット、マークの値はそれぞれ異なります。新しいバッファ位置はゼロ、容量とリミットは
length
、マークは未定義、バイト順序はこのバッファのものと同一です。 新しいバッファは、このバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。また、このバッファが読取り専用バッファである場合にかぎり読取り専用バッファになります。- 定義:
- クラス
Buffer
のslice
- パラメータ:
index
- 新しいバッファの内容が開始される、このバッファ内の位置。limit()
以外の値である必要があります。length
- 新規バッファに含まれる要素の数。負以外でlimit() - index
より大きい値である必要があります。- 戻り値:
- 新しいバッファ
- 例外:
IndexOutOfBoundsException
-index
が、limit()
以上の場合、length
がマイナスまたはlength > limit() - index
- 導入されたバージョン:
- 13
-
duplicate
public abstract ShortBuffer duplicate()このバッファの内容を共有する新しいshortバッファを作成します。新しいバッファの内容は、このバッファの内容と同じになります。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。新しいバッファの内容に変更を加えると、その内容がこのバッファに反映されます。2つのバッファの位置、リミット、マークの値はそれぞれ異なります。
新しいバッファ容量、限界、位置、マーク値、およびバイト順は、このバッファのものと同じになります。 新しいバッファは、このバッファがダイレクト・バッファである場合にかぎりダイレクト・バッファになります。また、このバッファが読取り専用バッファである場合にかぎり読取り専用バッファになります。
-
asReadOnlyBuffer
public abstract ShortBuffer asReadOnlyBuffer()このバッファの内容を共有する新しい読込み専用shortバッファを作成します。新しいバッファの内容は、このバッファの内容と同じになります。 このバッファの内容に変更を加えると、その内容が新しいバッファに反映されます。しかし、新しいバッファ自体は読取り専用であり、その共有内容を変更することはできません。 2つのバッファの位置、リミット、マークの値はそれぞれ異なります。
新しいバッファ容量、限界、位置、マーク値、およびバイト順は、このバッファのものと同じになります。
このバッファ自身が読込み専用の場合は、このメソッドは
duplicate
と同じように動作します。- 戻り値:
- 新しい読込み専用shortバッファ
-
get
public abstract short get()相対getメソッドです。 このバッファの現在位置のshortを読み込み、現在位置を増加します。- 戻り値:
- バッファの現在位置のshort
- 例外:
BufferUnderflowException
- バッファの現在位置がリミット以上である場合
-
put
public abstract ShortBuffer put(short s) 相対putメソッドです (オプションの操作)。このバッファの現在位置に指定されたshortを書き込み、現在位置を増加します。
- パラメータ:
s
- 書き込まれるshort- 戻り値:
- このバッファ
- 例外:
BufferOverflowException
- このバッファの現在位置がリミット以上である場合ReadOnlyBufferException
- このバッファが読込み専用である場合
-
get
public abstract short get(int index) 絶対getメソッドです。 指定されたインデックス位置のshortを読み込みます。- パラメータ:
index
- shortの読込み位置を示すインデックス- 戻り値:
- 指定されたインデックス位置のshort
- 例外:
IndexOutOfBoundsException
-index
が負の値であるか、バッファの制限より小さい値でない場合
-
put
public abstract ShortBuffer put(int index, short s) 絶対putメソッドです (オプションの操作)。このバッファの指定されたインデックス位置に指定されたshortを書き込みます。
- パラメータ:
index
- shortの書込み先を示すインデックスs
- 書き込まれるshort値- 戻り値:
- このバッファ
- 例外:
IndexOutOfBoundsException
-index
が負の値であるか、バッファの制限より小さい値でない場合ReadOnlyBufferException
- このバッファが読込み専用である場合
-
get
public ShortBuffer get(short[] dst, int offset, int length) 相対一括getメソッドです。このメソッドは、このバッファから指定された配列へshortを転送します。 バッファに残っているショート数が、リクエストを満たすために必要となる数より少ない場合、つまり、
length
>
remaining()
の場合、ショートは転送されず、BufferUnderflowException
がスローされます。それ以外の場合、このメソッドは、このバッファの
length
shortsを、このバッファの現在の位置から、配列内の指定されたオフセットに、指定された配列にコピーします。 このバッファの位置は、length
によって増分されます。つまり、
src.get(dst, off, len)
形式のこのメソッドの呼出しは、ループとまったく同じ効果があります
ただし、このバッファ内に十分な数のshortが存在することを最初に確認する動作は除きます。また、このメソッドを使用したほうがループよりもはるかに効率的です。for (int i = off; i < off + len; i++) dst[i] = src.get();
- パラメータ:
dst
- shortの書込み先となる配列offset
- 書き込まれる最初のショートの配列内のオフセット。負以外で、dst.length
以下である必要がありますlength
- 指定された配列に書き込まれる最大ショート数。負以外で、dst.length - offset
以下である必要があります- 戻り値:
- このバッファ
- 例外:
BufferUnderflowException
- このバッファの残りがlength
未満の場合IndexOutOfBoundsException
-offset
パラメータとlength
パラメータの前提条件が満たされていない場合
-
get
public ShortBuffer get(short[] dst) 相対一括getメソッドです。このメソッドは、このバッファから指定された配列へshortを転送します。
src.get(a)
形式のこのメソッドの起動は、起動とまったく同じように動作src.get(a, 0, a.length)
- パラメータ:
dst
- コピー先配列- 戻り値:
- このバッファ
- 例外:
BufferUnderflowException
- このバッファの残りがlength
未満の場合
-
get
public ShortBuffer get(int index, short[] 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
-index
、offset
およびlength
パラメータの事前条件が満たされていない場合、それらを保持しません- 導入されたバージョン:
- 13
-
get
public ShortBuffer get(int index, short[] dst) 絶対一括getメソッド。このメソッドは、このバッファから指定された配列へshortを転送します。 このバッファの位置は変わりません。 フォーム
src.get(index, dst)
のこのメソッドの起動は、起動とまったく同じ方法で動作します:src.get(index, dst, 0, dst.length)
- パラメータ:
index
- 最初の短縮名の読取り元であるこのバッファ内のインデックス。負でない、またはlimit()
より小さい必要があります。dst
- コピー先配列- 戻り値:
- このバッファ
- 例外:
IndexOutOfBoundsException
-index
が負であるか、limit()
より小さくないか、またはlimit() - index < dst.length
の場合- 導入されたバージョン:
- 13
-
put
public ShortBuffer put(ShortBuffer src) 相対一括putメソッドです (オプションの操作)。このメソッドは、指定されたソース・バッファ内に残っているshortをこのバッファへ転送します。 ソース・バッファに、このバッファより短い文字が残っている場合、つまり、
src.remaining()
>
remaining()
の場合、短縮文字は転送されず、BufferOverflowException
がスローされます。それ以外の場合、このメソッドは、指定されたバッファのn =
src.remaining()
shortsを、各バッファの現在の位置からこのバッファにコピーします。 そのたびに、両方のバッファの位置がnずつ増加します。つまり、
dst.put(src)
形式のこのメソッドの呼出しは、ループとまったく同じ効果がありますwhile (src.hasRemaining()) dst.put(src.get());
ただし、このバッファ内に十分な容量があることを最初に確認する動作は除きます。また、このメソッドを使用したほうがループよりもはるかに効率的です。 このバッファとソース・バッファが同じバッキング配列またはメモリーを共有している場合、結果は、このバッファに書き込まれる前にソース要素が最初に中間のロケーションにコピーされたかのようになります。- パラメータ:
src
- shortの読込み先となるソース・バッファ(このバッファ以外)- 戻り値:
- このバッファ
- 例外:
BufferOverflowException
- このバッファに、ソース・バッファ内に残っているshortを格納できるだけの容量がない場合IllegalArgumentException
- ソース・バッファとしてこのバッファを指定した場合ReadOnlyBufferException
- このバッファが読込み専用である場合
-
put
public ShortBuffer put(int index, ShortBuffer src, int offset, int length) (optional operation)の絶対一括putメソッド。このメソッドは、ソース・バッファ内の指定された
offset
およびこのバッファ内の指定されたindex
から、指定されたソース・バッファにlength
ショートを転送します。 両方のバッファの位置は変更されません。つまり、
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
- shortの読取り元バッファoffset
- 最初に読み込まれるshortのソース・バッファ内のインデックス。負ではなく、src.limit()
より小さい値である必要がありますlength
- 指定されたバッファから読み取られるshortの数。limit() - index
およびsrc.limit() - offset
のいずれか小さい方より小さく、負でない値にする必要があります- 戻り値:
- このバッファ
- 例外:
IndexOutOfBoundsException
-index
、offset
およびlength
パラメータの事前条件が満たされていない場合、それらを保持しませんReadOnlyBufferException
- このバッファが読込み専用である場合- 導入されたバージョン:
- 16
-
put
public ShortBuffer put(short[] src, int offset, int length) 相対一括putメソッドです (オプションの操作)。このメソッドは、指定されたソース配列からこのバッファへshortを転送します。 配列からコピーされる短縮文字がこのバッファに残らない場合、つまり、
length
>
remaining()
の場合、短縮文字は転送されず、BufferOverflowException
がスローされます。それ以外の場合、このメソッドは、指定された配列の
length
shortsをこのバッファにコピーし、配列内の指定されたオフセットから、このバッファの現在の位置から始めます。 このバッファの位置は、length
によって増分されます。つまり、
dst.put(src, off, len)
形式のこのメソッドの呼出しは、ループとまったく同じ効果があります
ただし、このバッファ内に十分な容量があることを最初に確認する動作は除きます。また、このメソッドを使用したほうがループよりもはるかに効率的です。for (int i = off; i < off + len; i++) dst.put(src[i]);
- パラメータ:
src
- shortの読込み先となる配列offset
- 最初に読み込まれる短い配列内のオフセット。src.length
より小さくないでください。length
- 指定された配列から読み取られる不足の数。負でない値でsrc.length - offset
より大きい値である必要があります。- 戻り値:
- このバッファ
- 例外:
BufferOverflowException
- このバッファ内に残っている容量が不足している場合IndexOutOfBoundsException
-offset
パラメータとlength
パラメータの前提条件が満たされていない場合ReadOnlyBufferException
- このバッファが読込み専用である場合
-
put
public final ShortBuffer put(short[] src) 相対一括putメソッドです (オプションの操作)。このメソッドは、ソースとなる指定されたshort配列の内容全体をこのバッファへ転送します。
dst.put(a)
形式のこのメソッドの起動は、起動とまったく同じように動作dst.put(a, 0, a.length)
- パラメータ:
src
- 転送元配列- 戻り値:
- このバッファ
- 例外:
BufferOverflowException
- このバッファ内に残っている容量が不足している場合ReadOnlyBufferException
- このバッファが読込み専用である場合
-
put
public ShortBuffer put(int index, short[] 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
- shortの読込み先となる配列offset
- 最初に読み込まれる短い配列内のオフセット。src.length
より短く、小さくする必要があります。length
- 指定された配列から読み取られる間隔の数。負でない値で、limit() - index
およびsrc.length - offset
の値より小さくない値である必要があります。- 戻り値:
- このバッファ
- 例外:
IndexOutOfBoundsException
-index
、offset
およびlength
パラメータの事前条件が満たされていない場合、それらを保持しませんReadOnlyBufferException
- このバッファが読込み専用である場合- 導入されたバージョン:
- 13
-
put
public ShortBuffer put(int index, short[] src) (optional operation)の絶対一括putメソッド。このメソッドは、指定されたソース配列からこのバッファにショート・コピーをコピーします。 このバッファの位置は変わりません。 フォーム
dst.put(index, src)
のこのメソッドの起動は、起動とまったく同じ方法で動作します:dst.put(index, src, 0, src.length);
- パラメータ:
index
- 最初の短縮名が書き込まれるこのバッファ内のインデックス。limit()
以上でない必要があります。src
- shortの読込み先となる配列- 戻り値:
- このバッファ
- 例外:
IndexOutOfBoundsException
-index
が負であるか、limit()
より小さくないか、またはlimit() - index < src.length
の場合ReadOnlyBufferException
- このバッファが読込み専用である場合- 導入されたバージョン:
- 13
-
hasArray
public final boolean hasArray()このバッファがアクセス可能なshort配列に連動するかどうかを判断します。このメソッドが
true
を返す場合、array
およびarrayOffset
メソッドを安全に起動できます。 -
array
public final short[] array()このバッファを補助するshort配列を返します (オプションの操作)。このバッファの内容に変更を加えると、返される配列の内容も変更されます。その逆も同様です。
このメソッドを呼び出す前に
hasArray
メソッドを呼び出し、このバッファがアクセス可能な補助配列を持っていることを確認します。- 定義:
array
、クラスBuffer
- 戻り値:
- このバッファを補助する配列
- 例外:
ReadOnlyBufferException
- このバッファが配列に連動しており、しかも読込み専用である場合UnsupportedOperationException
- このバッファがアクセス可能な配列を利用しない場合
-
arrayOffset
public final int arrayOffset()このバッファの補助配列内にある、このバッファの最初の要素のオフセットを返します (オプションの操作)。このバッファが配列によってバックアップされる場合、バッファ位置pは配列索引p +
arrayOffset()
に対応します。このメソッドを呼び出す前に
hasArray
メソッドを呼び出し、このバッファがアクセス可能な補助配列を持っていることを確認します。- 定義:
arrayOffset
、クラスBuffer
- 戻り値:
- このバッファの配列内にある、このバッファの最初の要素のオフセット
- 例外:
ReadOnlyBufferException
- このバッファが配列に連動しており、しかも読込み専用である場合UnsupportedOperationException
- このバッファがアクセス可能な配列を利用しない場合
-
position
public final ShortBuffer position(int newPosition) このバッファの位置を設定します。 新しい位置の値よりもマークの値のほうが大きい場合、マークの定義は破棄されます。 -
limit
public final ShortBuffer limit(int newLimit) このバッファのリミットを設定します。 位置の値が新しいリミットより大きい場合、リミットと同じ値に変更されます。 マークの値が新しいリミットより大きい場合、マークの定義は破棄されます。 -
mark
public final ShortBuffer mark()このバッファの現在位置にマークを設定します。 -
reset
public final ShortBuffer reset()バッファの位置を以前にマークした位置に戻します。このメソッドを呼び出しても、マークの値は変更されません。マークが破棄されることもありません。
-
clear
public final ShortBuffer clear()このバッファをクリアします。 バッファの位置はゼロ、リミットは容量の値に設定されます。マークは破棄されます。一連のチャネル読込み操作または「put」操作を使用してこのバッファにデータを格納する前に、このメソッドを呼び出します。 たとえば、
buf.clear(); // Prepare buffer for reading in.read(buf); // Read data
このメソッドはバッファ内のデータを実際に消去するわけではありません。しかし、そうした状況で使用されるため、クリアと命名されています。
-
flip
public final ShortBuffer 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
メソッドと組み合わせて使用することがあります。 -
rewind
public final ShortBuffer rewind()このバッファをリワインド(巻き戻し)します。 位置はゼロに設定され、マークは破棄されます。このメソッドは、リミットを正しく設定したあと、一連のチャネル書込み操作(get)の前に呼び出します。 たとえば、
out.write(buf); // Write remaining data buf.rewind(); // Rewind buffer buf.get(array); // Copy data into array
-
compact
public abstract ShortBuffer compact()このバッファを圧縮します (オプションの操作)。バッファの現在位置からリミットまでの間にshortが存在する場合、これらをバッファの先頭にコピーします。 つまり、索引p =
position()
のshortは索引0にコピーされ、索引p + 1のshortは索引1にコピーされ、索引limit()
のshortまでコピーされます-1が索引n =limit()
にコピーされます-1
-p. 最終的にバッファの位置はn+1に設定され、リミットは容量の値と等しくなります。 マークは破棄されます。バッファの位置は、ゼロではなく、コピーされるshortの数と等しくなります。したがって、このメソッドを呼び出したあと、すぐに別の相対「put」メソッドを呼び出すことができます。
- 戻り値:
- このバッファ
- 例外:
ReadOnlyBufferException
- このバッファが読込み専用である場合
-
isDirect
public abstract boolean isDirect()現在のshortバッファがダイレクト・バッファであるかどうかを判断します。 -
toString
public String toString()このバッファの状態を要約した文字列を返します。 -
hashCode
public int hashCode()このバッファの現在のハッシュ・コードを返します。短いバッファのハッシュ・コードは、残りの要素にのみ依存します。つまり、
position()
の要素からlimit()
の要素までの要素、およびそれに含まれる要素によって決まります-1
。バッファのハッシュ・コードは内容依存型です。今後バッファの内容が変更されないことが明らかでないかぎり、バッファをハッシュ・マップその他のデータ構造のキーとして使用することは避けてください。
-
equals
public boolean equals(Object ob) このバッファが別のオブジェクトと等価であるかどうかを判断します。2つのshortバッファは、次の場合にかぎり等価です。
要素の型が同じである
バッファ内に残っている要素数が同じである
バッファ内に残っている要素のシーケンス(開始位置とは無関係)が各点で等しい(pointwise equal)
shortバッファが、その他の型のオブジェクトと等価になることはありません。
-
compareTo
public int compareTo(ShortBuffer that) このバッファを別のバッファと比較します。2つのshortバッファを比較する際は、バッファ内に残っている要素のシーケンスが辞書順に比較されます。このとき、双方のバッファ内に残っているシーケンスの開始位置は考慮されません。
Short.compare(short,short)
を呼び出したかのように、short
要素のペアが比較されます。shortバッファとその他の型のオブジェクトを比較することはできません。
- 定義:
compareTo
、インタフェースComparable<ShortBuffer>
- パラメータ:
that
- 比較対象のオブジェクト。- 戻り値:
- このバッファが指定されたバッファより小さい場合は負の整数、等しい場合はゼロ、大きい場合は正の整数
-
mismatch
public int mismatch(ShortBuffer that) このバッファと指定されたバッファの最初の不一致の相対索引を検索して戻します。 インデックスは各バッファのposition
に相対的であり、各バッファ(inclusive)の範囲が各バッファremaining
の範囲内で小さくなる。2つのバッファが共通プレフィクスを共有している場合、戻される索引は共通プレフィクスの長さとなり、各バッファ内のその索引の2つのバッファ間に不一致があることに従います。 一方のバッファがもう一方のバッファのプレフィクスである場合、戻された索引は各バッファ内の残りの要素の小さい方になり、残りの要素の数が多いバッファに対してのみ索引が有効になります。 それ以外の場合は、不一致はありません。
- パラメータ:
that
- このバッファと不一致をテストするためのバイト・バッファ- 戻り値:
- このバッファと指定されたバッファの最初の不一致の相対索引です。一致しない場合は -1です。
- 導入されたバージョン:
- 11
-
order
public abstract ByteOrder order()このバッファのbyte順序を取得します。割当てまたは既存の
short
配列のラップによって作成される短いバッファのバイト順序は、基礎となるハードウェアのnative order
です。 byteバッファのビューとして作成されたshortバッファのbyte順序は、ビューを作成した時点のbyteバッファのbyte順序と同じになります。- 戻り値:
- このバッファのbyte順序
-