LongDataBuffer

genel arayüz LongDataBuffer

Long'lardan oluşan bir DataBuffer .

Genel Yöntemler

özet LongDataBuffer
copyTo ( DataBuffer <Uzun> dst, uzun boyut)
soyut uzun
getLong (uzun dizin)
Verilen dizindeki uzunları okur.
özet Uzun
getObject (uzun dizin)
Verilen indeksteki değeri okur.
özet LongDataBuffer
dar (uzun boy)
İçeriği bu arabellek içeriğinin paylaşılan bir alt dizisi olan ve boyutu verilen değere ayarlanmış yeni bir arabellek oluşturur.
özet LongDataBuffer
ofset (uzun indeks)
Verilen dizinden başlayarak, içeriği bu arabellek içeriğinin paylaşılan bir alt dizisi olan yeni bir arabellek oluşturur.
özet LongDataBuffer
oku (uzun[] dst)
Uzun diziler kullanan toplu alma yöntemi.
özet LongDataBuffer
okuma (uzun[] dst, int ofset, int uzunluk)
Uzun diziler kullanan toplu alma yöntemi.
özet LongDataBuffer
setLong (uzun değer, uzun dizin)
Verilen long'u verilen dizindeki bu ara belleğe yazar.
özet LongDataBuffer
setObject (Uzun değer, uzun dizin)
özet LongDataBuffer
dilim (uzun dizin, uzun boyut)
Verilen dizinden ve verilen boyuttan başlayarak, içeriği bu arabellek içeriğinin paylaşılan bir alt dizisi olan yeni bir arabellek oluşturur.
özet DataBufferWindow < LongDataBuffer >
pencere (uzun boy)
Bu arabelleğin kısmi görünümünü sağlayan bir DataBufferWindow oluşturur.
özet LongDataBuffer
yazma (uzun[] kaynak, int ofset, int uzunluk)
Uzun diziler kullanan toplu koyma yöntemi.
özet LongDataBuffer
yaz (uzun[] kaynak)
Uzun diziler kullanan toplu koyma yöntemi.

Kalıtsal Yöntemler

Genel Yöntemler

genel özet LongDataBuffer copyTo ( DataBuffer <Long> dst, uzun boyut)

genel özet long getLong (uzun dizin)

Verilen dizindeki uzunları okur.

Parametreler
dizin kayan noktanın okunacağı dizin
İade
  • verilen indeksteki uzun
Atar
IndexOutOfBoundsException indeks negatifse veya arabellek boyutundan küçük değilse

genel özet Uzun getObject (uzun dizin)

Verilen indeksteki değeri okur. Önemli: Bu yöntemin kullanımı, ilkel olmayan türlerdeki arabelleklerle veya veri türünün arayan tarafından belirleyici olarak bilinmediği durumlarda sınırlı olmalıdır. Diğer durumlarda, performansı önemli ölçüde artıracak ilkel varyantının kullanımını tercih edin (örn. IntDataBuffer.getInt(idx)

Parametreler
dizin kayan noktanın okunacağı dizin
İade
  • verilen endeksteki değer

genel özet LongDataBuffer dar (uzun boyutlu)

İçeriği bu arabellek içeriğinin paylaşılan bir alt dizisi olan ve boyutu verilen değere ayarlanmış yeni bir arabellek oluşturur.

Yeni boyut bu arabellek boyutundan büyük olmamalıdır. Bu arabelleğin içeriğinde yapılan değişiklikler yeni arabellekte görünür olacaktır ve bunun tersi de geçerlidir. Yeni arabellek, yalnızca ve yalnızca bu arabellek salt okunursa salt okunur olacaktır.

Bu çağrı slice(0, size) eşdeğerdir

Parametreler
boyut bu yeni arabelleğin boyutu
İade
  • yeni tampon

genel özet LongDataBuffer ofseti (uzun dizin)

Verilen dizinden başlayarak, içeriği bu arabellek içeriğinin paylaşılan bir alt dizisi olan yeni bir arabellek oluşturur.

Dizin bu arabellek boyutundan büyük olmamalıdır. Bu arabelleğin içeriğinde yapılan değişiklikler yeni arabellekte görünür olacaktır ve bunun tersi de geçerlidir. Yeni arabellek, yalnızca ve yalnızca bu arabellek salt okunursa salt okunur olacaktır.

Bu çağrı slice(index, size() - index) ile eşdeğerdir.

Parametreler
dizin oluşturulan yeni arabelleğin ilk değerinin dizini, size() değerinden büyük olmamalıdır
İade
  • yeni tampon

genel özet LongDataBuffer okuması (long[] dst)

Uzun diziler kullanan toplu alma yöntemi.

Bu yöntem, değerleri bu arabellekten verilen hedef diziye aktarır. Arabellekte isteği karşılamak için gerekenden daha az değer varsa, yani dst.length > size() ise hiçbir değer aktarılmaz ve bir BufferUnderflowException oluşturulur.

Aksi takdirde, bu yöntem n = dst.length değerlerini bu arabellekten verilen diziye kopyalar.

Parametreler
dst değerlerin yazılacağı dizi
İade
  • bu tampon
Atar
TamponUnderflowException bu arabellekten kopyalanacak yeterli değer yoksa

genel özet LongDataBuffer okuması (long[] dst, int offset, int uzunluk)

Uzun diziler kullanan toplu alma yöntemi.

Bu yöntem, değerleri bu arabellekten verilen hedef diziye aktarır. Arabellekte isteği karşılamak için gerekenden daha az değer varsa, yani length > size() ise hiçbir değer aktarılmaz ve bir BufferUnderflowException oluşturulur.

Aksi takdirde, bu yöntem, n = length değerlerini bu arabellekten verilen uzaklıktan başlayarak verilen diziye kopyalar.

Parametreler
dst değerlerin yazılacağı dizi
telafi etmek yazılacak ilk değerin dizisi içindeki uzaklık; negatif olmamalı ve dst.length büyük olmamalıdır
uzunluk verilen diziye yazılacak maksimum değer sayısı; negatif olmamalı ve dst.length - offset değerinden büyük olmamalıdır
İade
  • bu tampon
Atar
TamponUnderflowException bu arabellekte uzunluk değerinden daha az değer kaldıysa
IndexOutOfBoundsException ofset ve uzunluk parametrelerindeki ön koşullar karşılanmıyorsa

genel özet LongDataBuffer setLong (uzun değer, uzun dizin)

Verilen long'u verilen dizindeki bu ara belleğe yazar.

Parametreler
değer yazılacak kadar uzun
dizin değerin yazılacağı dizin
İade
  • bu tampon
Atar
IndexOutOfBoundsException indeks negatifse veya arabellek boyutundan küçük değilse
ReadOnlyBufferException bu arabellek salt okunursa

genel özet LongDataBuffer setObject (Uzun değer, uzun dizin)

genel özet LongDataBuffer dilimi (uzun dizin, uzun boyut)

Verilen dizinden ve verilen boyuttan başlayarak, içeriği bu arabellek içeriğinin paylaşılan bir alt dizisi olan yeni bir arabellek oluşturur.

Dizin artı yeni boyut bu arabellek boyutundan büyük olmamalıdır. Bu arabelleğin içeriğinde yapılan değişiklikler yeni arabellekte görünür olacaktır ve bunun tersi de geçerlidir. Yeni arabellek, yalnızca ve yalnızca bu arabellek salt okunursa salt okunur olacaktır.

Parametreler
dizin oluşturulan yeni arabelleğin ilk değerinin dizini
boyut bu yeni arabelleğin boyutu size() dan büyük olmamalıdır
İade
  • yeni tampon

genel özet DataBufferWindow < LongDataBuffer > penceresi (uzun boyutlu)

Bu arabelleğin kısmi görünümünü sağlayan bir DataBufferWindow oluşturur.

Oluşturulan pencerenin sabit bir boyutu vardır ve offset(long) yaptığı gibi, yeni bir arabellek örneği tahsis etmeden verilerin farklı görünümlerini sağlamak için bu arabellek boyunca "slide" . Bu işlem sık sık tekrarlandığında genel performansı artırır. Örneğin:

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;
     
 }
 }

Döndürülen nesne durum bilgilidir ve iş parçacığı açısından güvenli değildir.

Parametreler
boyut pencerenin boyutu
İade
  • bu arabelleğin 0 dizininde başlayan yeni bir pencere

genel özet LongDataBuffer yazma (long[] src, int offset, int uzunluk)

Uzun diziler kullanan toplu koyma yöntemi.

Bu yöntem, verilen kaynak dizideki değerleri bu ara belleğe aktarır. Kaynak dizide bu arabellektekinden daha fazla değer varsa, yani length > size() ise hiçbir değer aktarılmaz ve bir BufferOverflowException oluşturulur.

Aksi takdirde, bu yöntem, verilen diziden n = length değerlerini, verilen konumdan başlayarak bu ara belleğe kopyalar.

Parametreler
kaynak değerlerin okunacağı kaynak dizisi
telafi etmek okunacak ilk değerin dizisi içindeki uzaklık; negatif olmamalı ve src.length büyük olmamalıdır
uzunluk verilen diziden okunacak değerlerin sayısı; negatif olmamalı ve src.length - offset değerinden büyük olmamalıdır
İade
  • bu tampon
Atar
BufferOverflowException kaynak dizideki değerler için bu arabellekte yeterli alan yoksa
IndexOutOfBoundsException ofset ve uzunluk parametrelerindeki ön koşullar karşılanmıyorsa
ReadOnlyBufferException bu arabellek salt okunursa

genel özet LongDataBuffer yazma (long[] src)

Uzun diziler kullanan toplu koyma yöntemi.

Bu yöntem, verilen kaynak dizideki değerleri bu ara belleğe aktarır. Kaynak dizide bu arabellektekinden daha fazla değer varsa, yani src.length > size() ise hiçbir değer aktarılmaz ve bir BufferOverflowException oluşturulur.

Aksi takdirde, bu yöntem verilen diziden n = src.length değerlerini kopyalar.

Parametreler
kaynak değerlerin okunacağı kaynak dizisi
İade
  • bu tampon
Atar
BufferOverflowException kaynak dizideki değerler için bu arabellekte yeterli alan yoksa
ReadOnlyBufferException bu arabellek salt okunursa