El método getDouble() de la clase java.nio.ByteBuffer se usa para leer los siguientes ocho bytes en la posición actual de este búfer, componiéndolos en un valor doble de acuerdo con el orden de bytes actual y luego incrementa la posición en ocho.
Sintaxis:
public abstract double getDouble()
Valor devuelto: este método devuelve el valor doble en la posición actual del búfer
Lanza: Este método lanza BufferUnderflowException si la posición actual del búfer no es más pequeña que su límite, entonces se lanza esta excepción.
A continuación se muestran los ejemplos para ilustrar el método getDouble():
Ejemplos 1:
// Java program to demonstrate // getDouble() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ByteBuffer int capacity = 16; // Creating the ByteBuffer try { // creating object of ByteBuffer // and allocating size capacity ByteBuffer bb = ByteBuffer.allocate(capacity); // putting the double value in the bytebuffer bb.asDoubleBuffer() .put(1234.3456) .put(2884.4444); // rewind the Bytebuffer bb.rewind(); // print the ByteBuffer System.out.println("Original ByteBuffer: "); for (int i = 1; i <= capacity / 8; i++) System.out.print(bb.getDouble() + " "); // rewind the Bytebuffer bb.rewind(); // Reads the double at this buffer's current position // using getDouble() method double value = bb.getDouble(); // print the char value System.out.println("\n\nByte Value: " + value); // Reads the char at this buffer's next position // using getDouble() method double value1 = bb.getDouble(); // print the char value System.out.print("\nNext Byte Value: " + value1); } catch (BufferUnderflowException e) { System.out.println("\nException Thrown : " + e); } } }
Original ByteBuffer: 1234.3456 2884.4444 Byte Value: 1234.3456 Next Byte Value: 2884.4444
Ejemplos 2:
// Java program to demonstrate // getDouble() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ByteBuffer int capacity = 16; // Creating the ByteBuffer try { // creating object of ByteBuffer // and allocating size capacity ByteBuffer bb = ByteBuffer.allocate(capacity); // putting the double value in the bytebuffer bb.asDoubleBuffer() .put(1234.3456) .put(2884.4444); // rewind the Bytebuffer bb.rewind(); // print the ByteBuffer System.out.println("Original ByteBuffer: "); for (int i = 1; i <= capacity / 8; i++) System.out.print(bb.getDouble() + " "); // rewind the Bytebuffer bb.rewind(); // Reads the double at this buffer's current position // using getDouble() method double value = bb.getDouble(); // print the char value System.out.println("\n\nByte Value: " + value); // Reads the char at this buffer's next position // using getDouble() method double value1 = bb.getDouble(); // print the char value System.out.println("\nNext Byte Value: " + value1); // Reads the char at this buffer's next position // using getDouble() method double value2 = bb.getDouble(); } catch (BufferUnderflowException e) { System.out.println("\nthere are fewer than " + "eight bytes remaining in" + " this buffer"); System.out.println("Exception Thrown : " + e); } } }
Original ByteBuffer: 1234.3456 2884.4444 Byte Value: 1234.3456 Next Byte Value: 2884.4444 there are fewer than eight bytes remaining in this buffer Exception Thrown : java.nio.BufferUnderflowException
Referencia: https://docs.oracle.com/javase/9/docs/api/java/nio/ByteBuffer.html#getDouble–
El método getDouble(int index) de ByteBuffer se usa para leer ocho bytes en el índice dado, componiéndolos en un valor doble de acuerdo con el orden de bytes actual.
Sintaxis:
public abstract double getDouble(int index)
Parámetros: este método toma índice como parámetro, que es el índice desde el cual se leerá el Byte.
Valor devuelto: este método devuelve el valor doble en el índice dado
Excepción: este método genera una excepción IndexOutOfBoundsException . Si el índice es negativo o no menor que el límite del búfer, se lanza esta excepción.
A continuación se muestran los ejemplos para ilustrar el método getDouble(int index) :
Ejemplos 1:
// Java program to demonstrate // getDouble() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ByteBuffer int capacity = 16; // Creating the ByteBuffer try { // creating object of ByteBuffer // and allocating size capacity ByteBuffer bb = ByteBuffer.allocate(capacity); // putting the double value in the bytebuffer bb.asDoubleBuffer() .put(1234.3456) .put(2884.4444); // rewind the Bytebuffer bb.rewind(); // Declaring the variable double c; // print the ByteBuffer System.out.println("Original ByteBuffer: "); for (int i = 1; i <= capacity / 8; i++) System.out.print(bb.getDouble() + " "); // rewind the Bytebuffer bb.rewind(); // Reads the double at this buffer's current position // using getDouble() method double value = bb.getDouble(0); // print the char value System.out.println("\n\nByte Value: " + value); // Reads the char at this buffer's next position // using getDouble() method double value1 = bb.getDouble(8); // print the char value System.out.print("\nNext Byte Value: " + value1); } catch (IndexOutOfBoundsException e) { System.out.println("\nindex is negative or " + "smaller than the buffer's " + "limit, minus seven"); System.out.println("Exception Thrown : " + e); } } }
Original ByteBuffer: 1234.3456 2884.4444 Byte Value: 1234.3456 Next Byte Value: 2884.4444
Ejemplos 2:
// Java program to demonstrate // getDouble() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ByteBuffer int capacity = 16; // Creating the ByteBuffer try { // creating object of ByteBuffer // and allocating size capacity ByteBuffer bb = ByteBuffer.allocate(capacity); // putting the double value in the bytebuffer bb.asDoubleBuffer() .put(1234.3456) .put(2884.4444); // rewind the Bytebuffer bb.rewind(); // Declaring the variable double c; // print the ByteBuffer System.out.println("Original ByteBuffer: "); for (int i = 1; i <= capacity / 8; i++) System.out.print(bb.getDouble() + " "); // rewind the Bytebuffer bb.rewind(); // Reads the double at this buffer's current position // using getDouble() method double value = bb.getDouble(0); // print the char value System.out.println("\n\nByte Value: " + value); // Reads the char at this buffer's next position // using getDouble() method double value1 = bb.getDouble(9); // print the char value System.out.print("\nNext Byte Value: " + value1); } catch (IndexOutOfBoundsException e) { System.out.println("\nindex is negative or" + " smaller than the buffer's" + " limit, minus seven"); System.out.println("Exception Thrown : " + e); } } }
Original ByteBuffer: 1234.3456 2884.4444 Byte Value: 1234.3456 index is negative or smaller than the buffer's limit, minus seven Exception Thrown : java.lang.IndexOutOfBoundsException
Referencia: https://docs.oracle.com/javase/9/docs/api/java/nio/ByteBuffer.html#getDouble-int-
Publicación traducida automáticamente
Artículo escrito por RohitPrasad3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA