LongDataBuffer

antarmuka publik LongDataBuffer

DataBuffer yang panjang.

Metode Publik

abstrak LongDataBuffer
copyTo ( DataBuffer <Panjang> dst, ukuran panjang)
abstrak panjang
getLong (indeks panjang)
Membaca panjang pada indeks yang diberikan.
abstrak Panjang
getObject (indeks panjang)
Membaca nilai pada indeks yang diberikan.
abstrak LongDataBuffer
sempit (ukuran panjang)
Membuat buffer baru yang kontennya merupakan kelanjutan bersama dari konten buffer ini, yang ukurannya diatur ke nilai yang ditentukan.
abstrak LongDataBuffer
offset (indeks panjang)
Membuat buffer baru yang kontennya merupakan kelanjutan bersama dari konten buffer ini, dimulai dari indeks yang ditentukan.
abstrak LongDataBuffer
baca (panjang[] dst)
Metode pengambilan massal, menggunakan array panjang.
abstrak LongDataBuffer
baca (panjang[] dst, int offset, int panjang)
Metode pengambilan massal, menggunakan array panjang.
abstrak LongDataBuffer
setLong (nilai panjang, indeks panjang)
Menuliskan panjang yang diberikan ke dalam buffer ini pada indeks yang diberikan.
abstrak LongDataBuffer
setObject (Nilai panjang, indeks panjang)
abstrak LongDataBuffer
irisan (indeks panjang, ukuran panjang)
Membuat buffer baru yang kontennya merupakan kelanjutan bersama dari konten buffer ini, dimulai dari indeks tertentu dan ukuran tertentu.
abstrak DataBufferWindow < LongDataBuffer >
jendela (ukuran panjang)
Membuat DataBufferWindow yang menyediakan sebagian tampilan buffer ini.
abstrak LongDataBuffer
tulis (panjang[] src, int offset, int panjang)
Metode penempatan massal, menggunakan array panjang.
abstrak LongDataBuffer
tulis (panjang[] src)
Metode penempatan massal, menggunakan array panjang.

Metode Warisan

Metode Publik

public abstract LongDataBuffer copyTo ( DataBuffer <Long> dst, ukuran panjang)

abstrak publik long getLong (indeks panjang)

Membaca panjang pada indeks yang diberikan.

Parameter
indeks indeks dari mana float akan dibaca
Kembali
  • panjang pada indeks yang diberikan
Melempar
IndexOutOfBoundsException jika indeks negatif atau tidak lebih kecil dari ukuran buffer

abstrak publik Long getObject (indeks panjang)

Membaca nilai pada indeks yang diberikan. Penting: Penggunaan metode ini harus dibatasi pada buffer tipe non-primitif atau ketika tipe data tidak diketahui secara deterministik oleh pemanggil. Dalam kasus lain, pilihlah penggunaan varian primitif yang akan meningkatkan kinerja secara signifikan (misalnya IntDataBuffer.getInt(idx)

Parameter
indeks indeks dari mana float akan dibaca
Kembali
  • nilai pada indeks yang diberikan

abstrak publik LongDataBuffer sempit (ukuran panjang)

Membuat buffer baru yang kontennya merupakan kelanjutan bersama dari konten buffer ini, yang ukurannya diatur ke nilai yang ditentukan.

Ukuran baru tidak boleh lebih besar dari ukuran buffer ini. Perubahan pada konten buffer ini akan terlihat di buffer baru dan sebaliknya. Buffer baru akan bersifat read-only jika, dan hanya jika, buffer ini bersifat read-only.

Panggilan ini setara dengan slice(0, size)

Parameter
ukuran ukuran buffer baru ini
Kembali
  • penyangga baru

offset LongDataBuffer abstrak publik (indeks panjang)

Membuat buffer baru yang kontennya merupakan kelanjutan bersama dari konten buffer ini, dimulai dari indeks yang ditentukan.

Indeks tidak boleh lebih besar dari ukuran buffer ini. Perubahan pada konten buffer ini akan terlihat di buffer baru dan sebaliknya. Buffer baru akan bersifat read-only jika, dan hanya jika, buffer ini bersifat read-only.

Panggilan ini setara dengan slice(index, size() - index)

Parameter
indeks indeks nilai pertama buffer yang baru dibuat, tidak boleh lebih besar dari size()
Kembali
  • penyangga baru

abstrak publik LongDataBuffer baca (panjang[] dst)

Metode pengambilan massal, menggunakan array panjang.

Metode ini mentransfer nilai dari buffer ini ke array tujuan tertentu. Jika nilai dalam buffer lebih sedikit daripada yang diperlukan untuk memenuhi permintaan, yaitu jika dst.length > size() , maka tidak ada nilai yang ditransfer dan BufferUnderflowException dilempar.

Jika tidak, metode ini akan menyalin nilai n = dst.length dari buffer ini ke dalam array yang diberikan.

Parameter
dst array tempat nilai akan ditulis
Kembali
  • penyangga ini
Melempar
BufferUnderflowException jika tidak ada cukup nilai untuk disalin dari buffer ini

abstrak publik LongDataBuffer baca (panjang[] dst, int offset, int panjang)

Metode pengambilan massal, menggunakan array panjang.

Metode ini mentransfer nilai dari buffer ini ke array tujuan tertentu. Jika ada lebih sedikit nilai dalam buffer daripada yang dibutuhkan untuk memenuhi permintaan, yaitu, jika length > size() , maka tidak ada nilai yang ditransfer dan BufferUnderflowException dilempar.

Jika tidak, metode ini akan menyalin nilai n = length dari buffer ini ke dalam larik tertentu mulai dari offset tertentu.

Parameter
dst array tempat nilai akan ditulis
mengimbangi offset dalam array dari nilai pertama yang akan ditulis; harus non-negatif dan tidak lebih besar dari dst.length
panjang jumlah maksimum nilai yang akan ditulis ke array tertentu; harus non-negatif dan tidak lebih besar dari dst.length - offset
Kembali
  • penyangga ini
Melempar
BufferUnderflowException jika ada kurang dari nilai panjang yang tersisa di buffer ini
IndexOutOfBoundsException jika prasyarat pada parameter offset dan panjang tidak terpenuhi

abstrak publik LongDataBuffer setLong (nilai panjang, indeks panjang)

Menuliskan panjang yang diberikan ke dalam buffer ini pada indeks yang diberikan.

Parameter
nilai panjang untuk ditulis
indeks indeks di mana nilai akan ditulis
Kembali
  • penyangga ini
Melempar
IndexOutOfBoundsException jika indeks negatif atau tidak lebih kecil dari ukuran buffer
ReadOnlyBufferException jika buffer ini bersifat read-only

public abstract LongDataBuffer setObject (Nilai panjang, indeks panjang)

irisan LongDataBuffer abstrak publik (indeks panjang, ukuran panjang)

Membuat buffer baru yang kontennya merupakan kelanjutan bersama dari konten buffer ini, dimulai dari indeks tertentu dan ukuran tertentu.

Indeks ditambah ukuran baru tidak boleh lebih besar dari ukuran buffer ini. Perubahan pada konten buffer ini akan terlihat di buffer baru dan sebaliknya. Buffer baru akan bersifat read-only jika, dan hanya jika, buffer ini bersifat read-only.

Parameter
indeks indeks nilai pertama buffer baru yang dibuat
ukuran ukuran buffer baru ini, tidak boleh lebih besar dari size()
Kembali
  • penyangga baru

jendela DataBufferWindow abstrak publik < LongDataBuffer > (ukuran panjang)

Membuat DataBufferWindow yang menyediakan sebagian tampilan buffer ini.

Jendela yang dibuat memiliki ukuran tetap dan dapat "slide" di sepanjang buffer ini untuk memberikan tampilan data yang berbeda tanpa mengalokasikan instance buffer baru, seperti yang dilakukan offset(long) . Hal ini meningkatkan kinerja secara keseluruhan ketika operasi ini sering diulang. Misalnya:

IntDataBuffer bufferA = DataBuffers.ofInts(1024);
 // ... init buffer data
 IntDataBuffer bufferB = DataBuffers.ofInts(1, 2, 3, 4);

 // Return the index of the first occurrence of bufferB in bufferA using a sliding window
 DataBufferWindow<IntDataBuffer> windowA = bufferA.window(4);
 for (int i = 0; i < bufferA.size() - bufferB.size(); ++i) {
     if (windowA.slideTo(i).buffer().equals(bufferB)) {
         return i;
     
 }
 }

Objek yang dikembalikan bersifat stateful dan tidak aman untuk thread.

Parameter
ukuran ukuran jendela
Kembali
  • jendela baru yang dimulai pada indeks 0 buffer ini

abstrak publik LongDataBuffer tulis (panjang[] src, int offset, int panjang)

Metode penempatan massal, menggunakan array panjang.

Metode ini mentransfer nilai dalam array sumber tertentu ke dalam buffer ini. Jika ada lebih banyak nilai dalam array sumber daripada di buffer ini, yaitu jika length > size() , maka tidak ada nilai yang ditransfer dan BufferOverflowException dilempar.

Jika tidak, metode ini akan menyalin nilai n = length dari larik tertentu ke dalam buffer ini, dimulai dari offset yang ditentukan.

Parameter
src array sumber dari mana nilai akan dibaca
mengimbangi offset dalam array dari nilai pertama yang dibaca; harus non-negatif dan tidak lebih besar dari src.length
panjang jumlah nilai yang akan dibaca dari array tertentu; harus non-negatif dan tidak lebih besar dari src.length - offset
Kembali
  • penyangga ini
Melempar
Pengecualian BufferOverflow jika tidak ada cukup ruang di buffer ini untuk nilai dalam array sumber
IndexOutOfBoundsException jika prasyarat pada parameter offset dan panjang tidak terpenuhi
ReadOnlyBufferException jika buffer ini bersifat read-only

abstrak publik LongDataBuffer tulis (panjang[] src)

Metode penempatan massal, menggunakan array panjang.

Metode ini mentransfer nilai dalam array sumber tertentu ke dalam buffer ini. Jika ada lebih banyak nilai dalam array sumber daripada di buffer ini, yaitu jika src.length > size() , maka tidak ada nilai yang ditransfer dan BufferOverflowException dilempar.

Jika tidak, metode ini akan menyalin nilai n = src.length dari array yang diberikan.

Parameter
src array sumber dari mana nilai akan dibaca
Kembali
  • penyangga ini
Melempar
Pengecualian BufferOverflow jika tidak ada cukup ruang di buffer ini untuk nilai dalam array sumber
ReadOnlyBufferException jika buffer ini bersifat read-only