ByteBuffer array() method in Java

Java 8ProgrammingObject Oriented Programming

A byte array for the buffer can be obtained using the method array() in the class java.nio.ByteBuffer. If the returned array is modified, then the contents of the buffer are also similarly modified and vice versa. If the buffer is read-only, then the ReadOnlyBufferException is thrown.

A program that demonstrates this is given as follows −

Example

 Live Demo

import java.nio.*;
import java.util.*;
public class Demo {
   public static void main(String[] args) {
      int n = 5;
      try {
         ByteBuffer buffer = ByteBuffer.allocate(n);
         buffer.put((byte)1);
         buffer.put((byte)2);
         buffer.put((byte)3);
         buffer.put((byte)4);
         buffer.put((byte)5);
         buffer.rewind();
         byte[] arr = buffer.array();
         System.out.println("The ByteBuffer is: " + Arrays.toString(arr));
      } catch (IllegalArgumentException e) {
         System.out.println("Error!!! IllegalArgumentException");
      } catch (ReadOnlyBufferException e) {
         System.out.println("Error!!! ReadOnlyBufferException");
      }
   }
}

Output

The ByteBuffer is: [1, 2, 3, 4, 5]
raja
Published on 12-Mar-2019 06:44:12
Advertisements