envolver (array flotante [])
El método wrap() de java.nio.FloatBuffer Class se usa para envolver una array flotante en un búfer. El nuevo búfer estará respaldado por la array flotante 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 compensación de array será cero.
Sintaxis:
public static FloatBuffer wrap(float[] array)
Parámetros: este método toma la array (la array que respaldará este búfer) como parámetro.
Valor devuelto: este método devuelve el nuevo búfer flotante.
A continuación se muestran los ejemplos para ilustrar el método wrap() :
Ejemplos 1:
// Java program to demonstrate // asReadOnlyBuffer() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declare and initialize the float array float[] fbb = { 1.23F, 2.34F, 4.56F }; // print the float array length System.out.println("Array length : " + fbb.length); // print the float array element System.out.println("\nArray element : " + Arrays.toString(fbb)); // wrap the float array into floatBuffer // using wrap() method FloatBuffer floatBuffer = FloatBuffer.wrap(fbb); // Rewind the floatbuffer floatBuffer.rewind(); // print the float buffer System.out.println("\nfloatBuffer : " + Arrays.toString(floatBuffer.array())); // print the FloatBuffer capacity System.out.println("\nfloatbuffer capacity : " + floatBuffer.capacity()); // print the FloatBuffer position System.out.println("\nfloatbuffer position: " + floatBuffer.position()); } }
Array length : 3 Array element : [1.23, 2.34, 4.56] floatBuffer : [1.23, 2.34, 4.56] floatbuffer capacity : 3 floatbuffer position: 0
envolver (array flotante [], desplazamiento int, longitud int)
El nuevo búfer estará respaldado por la array flotante 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 FloatBuffer wrap (float[] 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 // asReadOnlyBuffer() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declare and initialize the float array float[] fbb = { 1.23F, 2.34F, 4.56F }; // print the float array length System.out.println("Array length : " + fbb.length); // print the float array element System.out.println("\nArray element : " + Arrays.toString(fbb)); // wrap the float array into floatBuffer // using wrap() method FloatBuffer floatBuffer = FloatBuffer.wrap(fbb, 0, fbb.length); // Rewind the floatbuffer floatBuffer.rewind(); // print the float buffer System.out.println("\nfloatBuffer : " + Arrays.toString(floatBuffer.array())); // print the FloatBuffer capacity System.out.println("\nfloatbuffer capacity : " + floatBuffer.capacity()); // print the FloatBuffer position System.out.println("\nfloatbuffer position: " + floatBuffer.position()); } }
Array length : 3 Array element : [1.23, 2.34, 4.56] floatBuffer : [1.23, 2.34, 4.56] floatbuffer capacity : 3 floatbuffer position: 0
Ejemplos 2: Para demostrar NullPointerException
// Java program to demonstrate // asReadOnlyBuffer() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declare and initialize the float array float[] fbb = { 1.23F, 2.34F, 4.56F }; // print the float array length System.out.println("Array length : " + fbb.length); // print the float array element System.out.println("\nArray element : " + Arrays.toString(fbb)); try { // wrap the float array into floatBuffer // using wrap() method System.out.println("\nHere " + "offset and length does not hold" + " the required condition "); FloatBuffer floatBuffer = FloatBuffer.wrap(fbb, 1, fbb.length); // Rewind the floatbuffer floatBuffer.rewind(); // print the float buffer System.out.println("\nfloatBuffer : " + Arrays.toString(floatBuffer.array())); // print the FloatBuffer capacity System.out.println("\nfloatbuffer capacity : " + floatBuffer.capacity()); // print the FloatBuffer position System.out.println("\nfloatbuffer position: " + floatBuffer.position()); } catch (IndexOutOfBoundsException e) { System.out.println("Exception throws: " + e); } } }
Array length : 3 Array element : [1.23, 2.34, 4.56] Here offset and length does not hold the required condition Exception throws: java.lang.IndexOutOfBoundsException
Publicación traducida automáticamente
Artículo escrito por RohitPrasad3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA