Thursday, December 11, 2025
HomeLanguagesJavaCharBuffer hasArray() method in Java

CharBuffer hasArray() method in Java

The hasArray() method of java.nio.CharBuffer class is used to ensure whether or not the given buffer is backed by an accessible char array. It returns true if there is an accessible backing array to this buffer, else it returns false. If this method returns true, then the array() and arrayOffset() methods may safely be invoked, as they work on the backing array.

Syntax:

public final boolean hasArray()

Return Value: This method will return true if, and only if, this buffer is backed by an array and is not read-only. Else it returns false.

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

Examples 1: When the buffer is backed by an array




// Java program to demonstrate
// hasArray() method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // Declaring the capacity of the CharBuffer
        int capacity = 10;
  
        // Creating the CharBuffer
        try {
  
            // creating object of Intbuffer
            // and allocating size capacity
            CharBuffer cb = CharBuffer.allocate(capacity);
  
            // putting the value in Intbuffer
            cb.put('a');
            cb.put(2, 'b');
            cb.rewind();
  
            // checking CharBuffer cb is backed by array or not
            boolean isArray = cb.hasArray();
  
            // checking if else condition
            if (isArray)
                System.out.println("CharBuffer cb is"
                                   + " backed by array");
            else
                System.out.println("CharBuffer cb is"
                                   + " not backed by any array");
        }
  
        catch (IllegalArgumentException e) {
            System.out.println("IllegalArgumentException catched");
        }
  
        catch (ReadOnlyBufferException e) {
            System.out.println("ReadOnlyBufferException catched");
        }
    }
}


Output:

CharBuffer cb is backed by array

Examples 2: When the buffer is not backed by an array




// Java program to demonstrate
// hasArray() method
  
import java.nio.*;
import java.util.*;
  
public class GFG {
  
    public static void main(String[] args)
    {
  
        // Declaring the capacity of the CharBuffer
        int capacity = 10;
  
        // 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(2, 'b');
            cb.rewind();
  
            // Creating a read-only copy of CharBuffer
            // using asReadOnlyBuffer() method
            CharBuffer cb1 = cb.asReadOnlyBuffer();
  
            // checking CharBuffer cb is backed by array or not
            boolean isArray = cb1.hasArray();
  
            // checking if else condition
            if (isArray)
                System.out.println("CharBuffer cb is"
                                   + " backed by array");
            else
                System.out.println("CharBuffer cb is"
                                   + " not backed by any array");
        }
  
        catch (IllegalArgumentException e) {
            System.out.println("IllegalArgumentException catched");
        }
  
        catch (ReadOnlyBufferException e) {
            System.out.println("ReadOnlyBufferException catched");
        }
    }
}


Output:

CharBuffer cb is not backed by any array
RELATED ARTICLES

Most Popular

Dominic
32441 POSTS0 COMMENTS
Milvus
105 POSTS0 COMMENTS
Nango Kala
6813 POSTS0 COMMENTS
Nicole Veronica
11950 POSTS0 COMMENTS
Nokonwaba Nkukhwana
12024 POSTS0 COMMENTS
Shaida Kate Naidoo
6943 POSTS0 COMMENTS
Ted Musemwa
7195 POSTS0 COMMENTS
Thapelo Manthata
6889 POSTS0 COMMENTS
Umr Jansen
6880 POSTS0 COMMENTS