İnt'lerden oluşan bir DataBuffer
.
Genel Yöntemler
özet IntDataBuffer | copyTo ( DataBuffer <Tamsayı> dst, uzun boyut) |
soyut int | getInt (uzun dizin) Verilen dizindeki int'yi okur. |
soyut Tamsayı | getObject (uzun dizin) Verilen indeksteki değeri okur. |
özet IntDataBuffer | 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 IntDataBuffer | 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 IntDataBuffer | oku (int[] dst) İnt dizilerini kullanarak toplu alma yöntemi. |
özet IntDataBuffer | okuma (int[] dst, int ofset, int uzunluk) İnt dizilerini kullanarak toplu alma yöntemi. |
özet IntDataBuffer | setInt (int değeri, uzun dizin) Verilen int'yi verilen dizindeki bu arabelleğe yazar. |
özet IntDataBuffer | setObject (Tamsayı değeri, uzun dizin) |
özet IntDataBuffer | 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 < IntDataBuffer > | pencere (uzun boy) Bu arabelleğin kısmi görünümünü sağlayan bir DataBufferWindow oluşturur. |
özet IntDataBuffer | yaz (int[] kaynak) İnt dizilerini kullanan toplu koyma yöntemi. |
özet IntDataBuffer | yazma (int[] kaynak, int ofset, int uzunluk) İnt dizilerini kullanan toplu koyma yöntemi. |
Kalıtsal Yöntemler
Genel Yöntemler
genel soyut int getInt (uzun dizin)
Verilen dizindeki int'yi okur.
Parametreler
indeks | kayan noktanın okunacağı dizin |
---|
İade
- verilen dizindeki int
Atar
IndexOutOfBoundsException | indeks negatifse veya arabellek boyutundan küçük değilse |
---|
genel özet Tamsayı 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
indeks | kayan noktanın okunacağı dizin |
---|
İade
- verilen endeksteki değer
genel özet IntDataBuffer 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 IntDataBuffer 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
indeks | oluşturulan yeni arabelleğin ilk değerinin dizini, size() değerinden büyük olmamalıdır |
---|
İade
- yeni tampon
genel özet IntDataBuffer okuması (int[] dst)
İnt dizilerini kullanarak 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 IntDataBuffer okuması (int[] dst, int offset, int uzunluk)
İnt dizilerini kullanarak 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ğerlerinden daha az değer kaldıysa |
---|---|
IndexOutOfBoundsException | ofset ve uzunluk parametrelerindeki ön koşullar karşılanmıyorsa |
genel özet IntDataBuffer setInt (int değeri, uzun dizin)
Verilen int'yi verilen dizindeki bu arabelleğe yazar.
Parametreler
değer | yazılacak int |
---|---|
indeks | 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 IntDataBuffer 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
indeks | oluşturulan yeni arabelleğin ilk değerinin dizini |
---|---|
boyut | bu yeni arabelleğin boyutu size() büyük olmamalıdır |
İade
- yeni tampon
genel özet DataBufferWindow < IntDataBuffer > pencere (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 IntDataBuffer yazma (int[] src)
İnt dizilerini 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 |
genel özet IntDataBuffer yazma (int[] src, int offset, int uzunluk)
İnt dizilerini 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 |