putShort(valor int)
El método putShort(int value) de java.nio.ByteBuffer Class se usa para escribir dos bytes que contienen el valor corto dado, en el orden de bytes actual, en este búfer en la posición actual y luego incrementa la posición en dos.
Sintaxis:
public abstract ByteBuffer putShort(short value)
Parámetros: Este método toma el valor corto a escribir.
Valor devuelto: este método devuelve este búfer.
Excepción: este método arroja las siguientes excepciones:
- BufferOverflowException: si la posición actual de este búfer no es más pequeña que su límite
- ReadOnlyBufferException : si este búfer es de solo lectura
A continuación se muestran los ejemplos para ilustrar el método putShort (valor corto):
Ejemplo 1:
// Java program to demonstrate // putShort() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ByteBuffer int capacity = 6; // Creating the ByteBuffer try { // creating object of ByteBuffer // and allocating size capacity ByteBuffer bb = ByteBuffer.allocate(capacity); // putting the value in ByteBuffer // using putShort() method bb.putShort((short)0x041A) .putShort((short)0x042A) .putShort((short)0x043A) .rewind(); // print the ByteBuffer System.out.print("Original ByteBuffer: [ "); for (int i = 1; i <= capacity / 2; i++) System.out.print(bb.getShort() + " "); System.out.print("]"); } catch (BufferOverflowException e) { System.out.println("Exception throws : " + e); } catch (ReadOnlyBufferException e) { System.out.println("Exception throws : " + e); } } }
Original ByteBuffer: [ 1050 1066 1082 ]
Ejemplo 2: Para demostrar BufferOverflowException.
// Java program to demonstrate // putShort() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ByteBuffer int capacity = 6; // Creating the ByteBuffer try { // creating object of ByteBuffer // and allocating size capacity ByteBuffer bb = ByteBuffer.allocate(capacity); // putting the value in ByteBuffer // using putShort() method bb.putShort((short)0x041A) .putShort((short)0x042A) .putShort((short)0x043A) .rewind(); // print the ByteBuffer System.out.print("Original ByteBuffer: [ "); for (int i = 1; i <= capacity / 2; i++) System.out.print(bb.getShort() + " "); System.out.print("]"); // putting the value in ByteBuffer // using putInt() method bb.putShort((short)234); } catch (BufferOverflowException e) { System.out.println("\n\nbuffer's current position" + " is not smaller than its limit"); System.out.println("Exception throws : " + e); } catch (ReadOnlyBufferException e) { System.out.println("Exception throws : " + e); } } }
Original ByteBuffer: [ 1050 1066 1082 ] buffer's current position is not smaller than its limit Exception throws : java.nio.BufferOverflowException
Ejemplos 3: Para demostrar ReadOnlyBufferException.
// Java program to demonstrate // putShort() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ByteBuffer int capacity = 6; // Creating the ByteBuffer try { // creating object of ByteBuffer // and allocating size capacity ByteBuffer bb = ByteBuffer.allocate(capacity); // putting the value in ByteBuffer // using putShort() method bb.putShort((short)0x041A) .putShort((short)0x042A) .putShort((short)0x043A) .rewind(); // print the ByteBuffer System.out.print("Original ByteBuffer: [ "); for (int i = 1; i <= capacity / 2; i++) System.out.print(bb.getShort() + " "); System.out.print("]"); // Creating a read-only copy of ByteBuffer // using asReadOnlyBuffer() method ByteBuffer bb1 = bb.asReadOnlyBuffer(); System.out.println("\n\nTrying to put the short value" + " in read-only buffer"); // putting the value in readonly ByteBuffer // using putShort() method bb1.putShort((short)234); } catch (BufferOverflowException e) { System.out.println("\n\nbuffer's current position" + " is not smaller than its limit"); System.out.println("Exception throws : " + e); } catch (ReadOnlyBufferException e) { System.out.println("Exception throws : " + e); } } }
Original ByteBuffer: [ 1050 1066 1082 ] Trying to put the short value in read only buffer Exception throws : java.nio.ReadOnlyBufferException
putShort(índice int, valor corto)
El método putShort(int index, short value) de java.nio.ByteBuffer Class se usa para escribir dos bytes que contienen los dos valores dados, en el orden de bytes actual, en este búfer en el índice dado.
Sintaxis:
public abstract ByteBuffer putShort(int index, short value)
Parámetros: Este método toma los siguientes argumentos como parámetro:
- index : el índice en el que se escribirá el byte
- value : El valor corto que se escribirá
Valor devuelto: este método devuelve este búfer.
Excepción: este método arroja la siguiente excepción:
- IndexOutOfBoundsException: si el índice es negativo o no más pequeño que el límite del búfer
- ReadOnlyBufferException : si este búfer es de solo lectura
A continuación se muestran los ejemplos para ilustrar el método putShort(int index, short value):
Ejemplo 1:
// Java program to demonstrate // putShort() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ByteBuffer int capacity = 6; // Creating the ByteBuffer try { // creating object of ByteBuffer // and allocating size capacity ByteBuffer bb = ByteBuffer.allocate(capacity); // putting the value in ByteBuffer // using putShort() at index 0 bb.putShort(0, (short)23); // putting the value in ByteBuffer // using putShort() at index 2 bb.putShort(2, (short)34); // putting the value in ByteBuffer // using putShort() at index 4 bb.putShort(4, (short)27); // rewinding the ByteBuffer bb.rewind(); // print the ByteBuffer System.out.print("Original ByteBuffer: [ "); for (int i = 1; i <= capacity / 2; i++) System.out.print(bb.getShort() + " "); System.out.print("]\n"); } catch (IndexOutOfBoundsException e) { System.out.println("Exception throws : " + e); } catch (ReadOnlyBufferException e) { System.out.println("Exception throws : " + e); } } }
Original ByteBuffer: [ 23 34 27 ]
Ejemplo 2: Para demostrar IndexOutOfBoundsException.
// Java program to demonstrate // putShort() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ByteBuffer int capacity = 6; // Creating the ByteBuffer try { // creating object of ByteBuffer // and allocating size capacity ByteBuffer bb = ByteBuffer.allocate(capacity); // putting the value in ByteBuffer // using putShort() at index 0 bb.putShort(0, (short)23); // putting the value in ByteBuffer // using putShort() at index 2 bb.putShort(2, (short)34); // putting the value in ByteBuffer // using putShort() at index 4 bb.putShort(4, (short)27); // rewinding the ByteBuffer bb.rewind(); // print the ByteBuffer System.out.print("Original ByteBuffer: [ "); for (int i = 1; i <= capacity / 2; i++) System.out.print(bb.getShort() + " "); System.out.print("]\n"); // putting the value in ByteBuffer // using putShort() at index -1 bb.putShort(-1, (short)45); } catch (IndexOutOfBoundsException e) { System.out.println("\nindex is negative or not smaller " + "than the buffer's limit"); System.out.println("Exception throws : " + e); } catch (ReadOnlyBufferException e) { System.out.println("Exception throws : " + e); } } }
Original ByteBuffer: [ 23 34 27 ] index is negative or not smaller than the buffer's limit Exception throws : java.lang.IndexOutOfBoundsException
Ejemplo 3: Para demostrar ReadOnlyBufferException.
// Java program to demonstrate // putShort() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ByteBuffer int capacity = 6; // Creating the ByteBuffer try { // creating object of ByteBuffer // and allocating size capacity ByteBuffer bb = ByteBuffer.allocate(capacity); // Creating a read-only copy of ByteBuffer // using asReadOnlyBuffer() method ByteBuffer bb1 = bb.asReadOnlyBuffer(); System.out.println("Trying to put the int value" + " in read-only buffer"); // putting the value in readonly ByteBuffer // using putInt() method bb1.putInt(0, 23); } catch (IndexOutOfBoundsException e) { System.out.println("Exception throws : " + e); } catch (ReadOnlyBufferException e) { System.out.println("Exception throws : " + e); } } }
Trying to put the int value in read only buffer Exception throws : java.nio.ReadOnlyBufferException
Referencia:
- https://docs.oracle.com/javase/9/docs/api/java/nio/ByteBuffer.html#putShort-short-
- https://docs.oracle.com/javase/9/docs/api/java/nio/ByteBuffer.html#putShort-int-short-
Publicación traducida automáticamente
Artículo escrito por RohitPrasad3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA