The allocate() method of java.nio.ShortBuffer Class is used to allocate a new short buffer.
The position of the new Buffer will be zero & it’s limit is its capacity, though the mark is undefined, and each of its elements is initialized to zero. It will be having a backing array, and the array offset as zero.
Syntax:
public static ShortBuffer allocate(int capacity)
Parameters: The method accepts a mandatory parameter capacity which specifies the capacity of the new buffer, in shorts.
Return Value: This method returns the new ShortBuffer.
Exception: This method throws the IllegalArgumentException, if the capacity is a negative integer.
Below programs illustrate the use of allocate() method :
Program 1:
Java
// Java program to demonstrate// allocate() methodimport java.nio.*;import java.util.*;public class GFG { public static void main(String[] args) { // Declaring the capacity of the ShortBuffer int capacity = 5; // Creating the ShortBuffer // creating object of Shortbuffer // and allocating size capacity ShortBuffer sb = ShortBuffer.allocate(capacity); // putting the value in Shortbuffer sb.put((short)10000); sb.put((short)10640); sb.put((short)10189); sb.put((short)-2000); sb.put((short)-16780); // Printing the ShortBuffer System.out.println("ShortBuffer: " + Arrays.toString(sb.array())); }} |
ShortBuffer: [10000, 10640, 10189, -2000, -16780]
Program 2: To show NullPointerException
Java
// Java program to demonstrate// allocate() methodimport java.nio.*;import java.util.*;public class GFG { public static void main(String[] args) { // Declaring the capacity of the ShortBuffer // by negative integer int capacity = -10; // Creating the ShortBuffer try { // creating object of shortbuffer // and allocating size with negative integer System.out.println("Trying to allocate a negative integer"); FloatBuffer fb = FloatBuffer.allocate(capacity); } catch (IllegalArgumentException e) { System.out.println("Exception thrown: " + e); } }} |
Trying to allocate a negative integer Exception thrown: java.lang.IllegalArgumentException: capacity < 0: (-10 < 0)
Reference: https://docs.oracle.com/javase/7/docs/api/java/nio/ShortBuffer.html#allocate()
