CharBuffer get() methods in Java

The get() method of java.nio.CharBuffer Class is used to reads the char at the given buffer’s current position, and then increments the position.

Syntax:

public abstract char get()

Return Value: This method returns the char value at the buffer’s current position.



Exceptions: This method throws BufferUnderflowException – If the buffer’s current position is not smaller than its limit, then this exception is thrown.

Below are the examples to illustrate the get() method:

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// get() method
import java.nio.*;
import java.util.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Declaring the capacity of the CharBuffer
        int capacity = 5;
  
        // Creating the CharBuffer
        try {
  
            // creating object of Charbuffer
            // and allocating size capacity
            CharBuffer cb = CharBuffer.allocate(capacity);
  
            // putting the value in Charbuffer
            cb.put('a');
            cb.put('b');
            cb.put('c');
            cb.rewind();
  
            // print the CharBuffer
            System.out.println("Original CharBuffer: "
                               + Arrays.toString(cb.array()));
  
            // Reads the Int at this buffer's current position
            // using get() method
            char value = cb.get();
  
            // print the Int value
            System.out.println("Int Value: " + value);
  
            // Reads the Int at this buffer's next position
            // using get() method
            char value1 = cb.get();
  
            // print the Int value
            System.out.print("Next Int Value: " + value1);
        }
  
        catch (IllegalArgumentException e) {
  
            System.out.println("IllegalArgumentException catched");
        }
  
        catch (ReadOnlyBufferException e) {
  
            System.out.println("ReadOnlyBufferException catched");
        }
  
        catch (BufferUnderflowException e) {
  
            System.out.println("Exception throws: " + e);
        }
    }
}

chevron_right


Output:

Original CharBuffer: [a, b, c, , ]
Int Value: a
Next Int Value: b

Examples 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// get() method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Declaring the capacity of the CharBuffer
        int capacity = 3;
  
        // Creating the CharBuffer
        try {
  
            // creating object of Charbuffer
            // and allocating size capacity
            CharBuffer cb = CharBuffer.allocate(capacity);
  
            // putting the value in Charbuffer
            cb.put('a');
            cb.put('b');
  
            // print the CharBuffer
            System.out.println("Original CharBuffer: "
                               + Arrays.toString(cb.array()));
  
            // Reads the Char at this buffer's current position
            // using get() method
            char value = cb.get();
  
            // print the Char value
            System.out.println("Char Value: " + value);
  
            // Reads the Char at this buffer's next position
            // using get() method
            System.out.print("Since the buffer current position is incremented\n");
            System.out.print(" to greater than its limit ");
  
            char value1 = cb.get();
  
            // print the Char value
            System.out.print("Next Char Value: " + value1);
        }
  
        catch (IllegalArgumentException e) {
  
            System.out.println("IllegalArgumentException catched");
        }
  
        catch (ReadOnlyBufferException e) {
  
            System.out.println("ReadOnlyBufferException catched");
        }
  
        catch (BufferUnderflowException e) {
  
            System.out.println("Exception throws : " + e);
        }
    }
}

chevron_right


Output:

Original CharBuffer: [a, b, ]
Char Value: 
Since the buffer current position is incremented
to greater than its limit Exception throws : java.nio.BufferUnderflowException

get(int index)

The get(int index) method of CharBuffer is used to read the article at a specified index.

Syntax :

public abstract char get(int index)

Parameters: This method takes index (The index from which the char will be read) as a parameter.

Return Value: This method returns the char value at the given index.


Exception: This method throws IndexOutOfBoundsException. If index is negative or not smaller than the buffer’s limit this exception is thrown.

Below are the examples to illustrate the get(int index) method:

Examples 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// get(int index) method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Declaring the capacity of the CharBuffer
        int capacity = 3;
  
        // Creating the CharBuffer
        try {
  
            // creating object of Charbuffer
            // and allocating size capacity
            CharBuffer cb = CharBuffer.allocate(capacity);
  
            // putting the value in Charbuffer
            cb.put('a');
            cb.put('b');
            cb.put('c');
  
            // print the CharBuffer
            System.out.println("Original CharBuffer: "
                               + Arrays.toString(cb.array()));
  
            // Reads the Char at the index 0 of the Charbuffer
            // using get() method
            char value0 = cb.get(0);
  
            // print the Char value
            System.out.println("Char Value at index 0: " + value0);
  
            // Reads the Char at the index 1 of the Charbuffer
            // using get() method
            char value1 = cb.get(1);
  
            // print the Char value
            System.out.println("Char Value at index 1: " + value1);
  
            // Reads the Char at the index 2 of the Charbuffer
            // using get() method
            char value2 = cb.get(2);
  
            // print the Char value
            System.out.println("Char Value at index 2: " + value2);
        }
  
        catch (IllegalArgumentException e) {
  
            System.out.println("IllegalArgumentException catched");
        }
  
        catch (IndexOutOfBoundsException e) {
  
            System.out.println("ReadOnlyBufferException catched");
        }
  
        catch (BufferUnderflowException e) {
  
            System.out.println("Exception throws : " + e);
        }
    }
}

chevron_right


Output:

Original CharBuffer: [a, b, c]
Char Value at index 0: a
Char Value at index 1: b
Char Value at index 2: c

Examples 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to demonstrate
// get() method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Declaring the capacity of the CharBuffer
        int capacity = 3;
  
        // Creating the CharBuffer
        try {
  
            // creating object of Charbuffer
            // and allocating size capacity
            CharBuffer cb = CharBuffer.allocate(capacity);
  
            // putting the value in Charbuffer
            cb.put('a');
            cb.put('b');
            cb.put('c');
  
            // print the CharBuffer
            System.out.println("Original CharBuffer: "
                               + Arrays.toString(cb.array()));
  
            // Reads the Char at the index 0 of the Charbuffer
            // using get() method
            char value0 = cb.get(0);
  
            // print the Char value
            System.out.println("Char Value at index 0: " + value0);
  
            // Reads the Char at the index 1 of the Charbuffer
            // using get() method
            char value1 = cb.get(1);
  
            // print the Char value
            System.out.println("Char Value at index 1: " + value1);
  
            // Reads the Char at the index 2 of the Charbuffer
            // using get() method
            System.out.println("Trying to get the Char"
                               + " of index greater than its limit ");
            char value2 = cb.get(4);
  
            // print the Char value
            System.out.println("Char Value at index 2: " + value2);
        }
  
        catch (IllegalArgumentException e) {
  
            System.out.println("IllegalArgumentException catched");
        }
  
        catch (IndexOutOfBoundsException e) {
  
            System.out.println("Exception thrown: " + e);
        }
  
        catch (BufferUnderflowException e) {
  
            System.out.println("Exception throws : " + e);
        }
    }
}

chevron_right


Output:

Original CharBuffer: [a, b, c]
Char Value at index 0: a
Char Value at index 1: b
Trying to get the Char of index greater than its limit 
Exception thrown: java.lang.IndexOutOfBoundsException


My Personal Notes arrow_drop_up

The function of education is to teach one to think intensively and to think critically

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.



Improved By : Vijay Sirra