The put() method of java.nio.ShortBuffer Class is used to write the given short into this buffer at the given index.
Syntax:
public abstract ShortBuffer put(int index, short s)
Parameters:
- index:This parameter specifies to the index at which the short will be written.It is optional.
- s:This parameter specifies to the short value to be written
Return Value:This method returns this buffer.
Exception:
- IndexOutOfBoundsException – If index is negative or not smaller than the buffer’s limit.
- ReadOnlyBufferException – If this buffer is read-only
Below program illustrates the put() method:
Program 1:
Java
// Java program to demonstrate put() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ShortBuffer int capacity = 3 ; // Creating the ShortBuffer try { // creating object of shortbuffer // and allocating size capacity ShortBuffer sb = ShortBuffer.allocate(capacity); // putting the value in shortbuffer // using put() at index 0 sb.put( 0 , ( short ) 400 ); // putting the value in shortbuffer // using put() at index 2 sb.put( 2 , ( short ) 1000 ); // putting the value in shortbuffer // using put() at index 1 sb.put( 1 , ( short ) 30 ); // rewinding the shortbuffer sb.rewind(); // print the ShortBuffer System.out.println("Original ShortBuffer: " + Arrays.toString(sb.array())); } catch (IndexOutOfBoundsException e) { System.out.println("Exception throws : " + e); } catch (ReadOnlyBufferException e) { System.out.println("Exception throws : " + e); } } } |
Original ShortBuffer: [400, 30, 1000]
Program 2: To demonstrate IndexOutOfBoundsException.
Java
// Java program to demonstrate put() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ShortBuffer int capacity = 3 ; // Creating the ShortBuffer try { // creating object of shortbuffer // and allocating size capacity ShortBuffer sb = ShortBuffer.allocate(capacity); // putting the value in shortbuffer // using put() at index 0 sb.put( 0 , ( short ) 31 ); // putting the value in shortbuffer // using put() at index 2 sb.put( 2 , ( short ) 49 ); // putting the value in shortbuffer // using put() at index -1 System.out.println("Trying to put the value" + " at the negative index"); sb.put(- 1 , ( short ) 27 ); } catch (IndexOutOfBoundsException e) { System.out.println("Exception throws : " + e); } catch (ReadOnlyBufferException e) { System.out.println("Exception throws : " + e); } } } |
Trying to put the value at the negative index Exception throws: java.lang.IndexOutOfBoundsException
Program 3: To demonstrate ReadOnlyBufferException.
Java
// Java program to demonstrate put() method import java.nio.*; import java.util.*; public class GFG { public static void main(String[] args) { // Declaring the capacity of the ShortBuffer int capacity = 3 ; // Creating the ShortBuffer try { // creating object of shortbuffer // and allocating size capacity // using allocate() method ShortBuffer sb = ShortBuffer.allocate(capacity); // Creating a read-only copy of ShortBuffer // using asReadOnlyBuffer() method ShortBuffer sb1 = sb.asReadOnlyBuffer(); System.out.println("Trying to put the float value" + " in read only buffer"); // putting the value in readonly shortbuffer // using put() method sb1.put( 0 , ( short ) 13 ); } catch (BufferOverflowException e) { System.out.println("Exception throws : " + e); } catch (ReadOnlyBufferException e) { System.out.println("Exception throws : " + e); } } } |
Trying to put the float value in read only buffer Exception throws: java.nio.ReadOnlyBufferException
Reference: https://docs.oracle.com/javase/9/docs/api/java/nio/ShortBuffer.html#put-int-short-