IntBuffer contiene una secuencia de valores enteros que se utilizarán en una operación de E/S. La clase IntBuffer proporciona las siguientes cuatro categorías de operaciones en búferes largos:
- Método de obtención absoluto y relativo que lee entradas individuales.
- Métodos put absolutos y relativos que escriben entradas individuales.
- Métodos put y get masivos relativos que transfieren secuencias contiguas de ints desde una array int o algún otro búfer int a este búfer y de este búfer a una array.
Los búferes int pueden ser creados por:
- allocate(): Esto asigna espacio para el contenido del búfer.
- wrap(): esto envuelve una array larga existente en un búfer.
La mayoría de los métodos de la clase IntBuffer son directamente análogos a los métodos definidos por ByteBuffer.
Declaración de clase:
clase pública abstracta IntBuffer
extiende el búfer
implementa Comparable<IntBuffer>
Métodos de la clase IntBuffer:
Método |
Descripción |
---|---|
Este método asigna un nuevo búfer int. |
|
Este método devuelve la array int que respalda este búfer. |
|
Este método devuelve el desplazamiento dentro de la array de respaldo de este búfer del primer elemento del búfer. |
|
Este método crea un nuevo búfer int de solo lectura que comparte el contenido de este búfer. |
|
Este método compacta este búfer. |
|
Este método compara este búfer con otro. |
|
Este método crea un nuevo búfer int que comparte el contenido de este búfer. |
|
Este método indica si este búfer es igual a otro objeto. |
|
Este método es un método de obtención relativo y devuelve el int en la posición actual del búfer. |
|
Este método es un método de obtención absoluto y devuelve el int en el índice dado. |
|
Este método es un método de obtención masiva relativa y devuelve este búfer. |
|
Este método relativo es un método de obtención masiva y devuelve este búfer. |
|
Este método indica si este búfer está respaldado por una array int accesible. |
|
código hash() |
Este método devuelve el código hash actual de este búfer. |
esDirecto() |
Este método indica si este búfer int es directo. |
ordenar() |
Este método recupera el orden de bytes de este búfer. |
Este método es un método put relativo y devuelve este búfer. |
|
Este método es un método de colocación masiva relativa y devuelve este búfer. |
|
Este método es un método de colocación masiva relativa y devuelve este búfer. |
|
Este método es un método de colocación masiva relativa y devuelve este búfer. |
|
Este método es un método de colocación masiva absoluto y devuelve este búfer. |
|
Este método crea un nuevo búfer int cuyo contenido es una subsecuencia compartida del contenido de este búfer. |
|
Enstringr() |
Este método devuelve una string que resume el estado de este búfer. |
Este método envuelve una array int en un búfer. |
|
Este método envuelve una array int en un búfer. |
Los siguientes son algunos programas para demostrar la clase IntBuffer y sus métodos:
Ejemplo 1:
Java
// Java program to demonstrate // IntBuffer class import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the IntBuffer int Capacity = 10; // Creating the IntBuffer // creating object of intbuffer // and allocating size capacity IntBuffer ib = IntBuffer.allocate(Capacity); // putting the value in intbuffer ib.put(100); ib.put(2, 9); System.out.println("IntBuffer: " + Arrays.toString(ib.array())); } }
IntBuffer: [100, 0, 9, 0, 0, 0, 0, 0, 0, 0]
Ejemplo 2:
Java
// Java program to demonstrate // IntBuffer class import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the IntBuffer int capacity = 10; // Creating the IntBuffer try { // creating object of Intbuffer // and allocating size capacity IntBuffer ib = IntBuffer.allocate(capacity); // putting the value in Intbuffer ib.put(4); ib.put(2, 9); ib.rewind(); // checking IntBuffer ib is backed by array or // not boolean isArray = ib.hasArray(); // checking if else condition if (isArray) System.out.println("IntBuffer ib is" + " backed by array"); else System.out.println( "IntBuffer ib is" + " not backed by any array"); } catch (IllegalArgumentException e) { System.out.println( "IllegalArgumentException catched"); } catch (ReadOnlyBufferException e) { System.out.println( "ReadOnlyBufferException catched"); } } }
IntBuffer ib is backed by array