Método IntBuffer wrap() en Java

envolver (array int [])

El método wrap() de java.nio.IntBuffer Class se usa para envolver una array int en un búfer. El nuevo búfer estará respaldado por la array int dada; es decir, las modificaciones al búfer harán que la array se modifique y viceversa. La capacidad y el límite del nuevo búfer serán array.length, su posición será cero y su marca no estará definida. Su array de respaldo será la array dada, y su desplazamiento de array será cero.

Sintaxis:

public static IntBuffer wrap(int[] array)

Parámetros: Este método toma array , que es la array que respaldará este búfer, como parámetro.

Valor devuelto: este método devuelve el nuevo búfer int creado.

A continuación se muestran los ejemplos para ilustrar el método wrap() :

Ejemplos 1:

// Java program to demonstrate
// wrap() method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Declare and initialize the int array
        int[] ibb = { 1, 2, 3 };
  
        // print the int array length
        System.out.println("Array length : "
                           + ibb.length);
  
        // print the int array element
        System.out.println("\nArray element : "
                           + Arrays.toString(ibb));
  
        // wrap the int array into intBuffer
        // using wrap() method
        IntBuffer intBuffer = IntBuffer.wrap(ibb);
  
        // Rewind the intbuffer
        intBuffer.rewind();
  
        // print the int buffer
        System.out.println("\nintBuffer : "
                           + Arrays.toString(intBuffer.array()));
  
        // print the IntBuffer capacity
        System.out.println("\nintbuffer capacity : "
                           + intBuffer.capacity());
  
        // print the IntBuffer position
        System.out.println("\nintbuffer position:  "
                           + intBuffer.position());
    }
}
Producción:

Array length : 3

Array element : [1, 2, 3]

intBuffer : [1, 2, 3]

intbuffer capacity : 3

intbuffer position:  0

wrap(array int[], compensación int, longitud int)

El método wrap() envuelve una array int en un búfer. El nuevo búfer estará respaldado por la array int dada; es decir, las modificaciones al búfer harán que la array se modifique y viceversa. La capacidad del nuevo búfer será array.longitud, su posición estará compensada, su límite será compensado + longitud y su marca no estará definida. Su array de respaldo será la array dada, y su desplazamiento de array será cero.

Sintaxis:

public static IntBuffer 
    wrap (int[] array, int offset, int length)

Parámetros: Este método toma los siguientes parámetros:

  • array: la array que respaldará el nuevo búfer.
  • offset: el desplazamiento del subarreglo a utilizar; debe ser no negativo y no mayor que array.length. La posición del nuevo búfer se establecerá en este valor.
  • longitud: la longitud del subarreglo que se utilizará; debe ser no negativo y no mayor que array.length – offset. El límite del nuevo búfer se establecerá en desplazamiento + longitud.

Valor devuelto: este método devuelve el nuevo búfer flotante.

Lanza: este método lanza la excepción IndexOutOfBoundsException si las condiciones previas en los parámetros de desplazamiento y longitud no se cumplen.

A continuación se muestran los ejemplos para ilustrar el método wrap():

Ejemplos 1:

// Java program to demonstrate
// wrap() method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Declare and initialize the int array
        int[] ibb = { 1, 2, 3 };
  
        // print the int array length
        System.out.println("Array length : " + ibb.length);
  
        // print the int array element
        System.out.println("\nArray element : "
                           + Arrays.toString(ibb));
  
        // wrap the int array into intBuffer
        // using wrap() method
        IntBuffer intBuffer = IntBuffer.wrap(ibb, 0,
                                             ibb.length);
  
        // Rewind the intbuffer
        intBuffer.rewind();
  
        // print the int buffer
        System.out.println("\nintBuffer : "
                           + Arrays.toString(intBuffer.array()));
  
        // print the IntBuffer capacity
        System.out.println("\nintbuffer capacity : "
                           + intBuffer.capacity());
  
        // print the IntBuffer position
        System.out.println("\nintbuffer position: "
                           + intBuffer.position());
    }
}
Producción:

Array length : 3

Array element : [1, 2, 3]

intBuffer : [1, 2, 3]

intbuffer capacity : 3

intbuffer position: 0

Ejemplos 2: Para demostrar NullPointerException

// Java program to demonstrate
// wrap() method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Declare and initialize the float array
        int[] ibb = { 1, 2, 3 };
  
        // print the int array length
        System.out.println("Array length : "
                           + ibb.length);
  
        // print the int array element
        System.out.println("\nArray element : "
                           + Arrays.toString(ibb));
  
        try {
            // wrap the int array into intBuffer
            // using wrap() method
            System.out.println("\nHere "
                               + "offset and length does not hold"
                               + " the required condition ");
  
            IntBuffer intBuffer = IntBuffer.wrap(ibb,
                                                 1,
                                                 ibb.length);
  
            // Rewind the intbuffer
            intBuffer.rewind();
  
            // print the int buffer
            System.out.println("\nintBuffer : "
                               + Arrays.toString(intBuffer.array()));
  
            // print the IntBuffer capacity
            System.out.println("\nintbuffer capacity : "
                               + intBuffer.capacity());
  
            // print the IntBuffer position
            System.out.println("\nintbuffer position:  "
                               + intBuffer.position());
        }
        catch (IndexOutOfBoundsException e) {
            System.out.println("Exception throws:  " + e);
        }
    }
}
Producción:

Array length : 3

Array element : [1, 2, 3]

Here offset and length does not hold the required condition 
Exception throws:  java.lang.IndexOutOfBoundsException

Publicación traducida automáticamente

Artículo escrito por nitin_sharma y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *