ByteBuffer duplicate() method in Java

Java 8Object Oriented ProgrammingProgramming

A duplicate buffer of a buffer can be created using the method duplicate() in the class java.nio.ByteBuffer. This duplicate buffer is identical to the original buffer. The method duplicate() returns the duplicate buffer that was created.

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 buffer1 = ByteBuffer.allocate(5);
         buffer1.put((byte)1);
         buffer1.put((byte)2);
         buffer1.put((byte)3);
         buffer1.put((byte)4);
         buffer1.put((byte)5);
         buffer1.rewind();
         System.out.println("The Original ByteBuffer is: " + Arrays.toString(buffer1.array()));
         ByteBuffer buffer2 = buffer1.duplicate();
         System.out.print("The Duplicate ByteBuffer is: " + Arrays.toString(buffer2.array()));
      } catch (IllegalArgumentException e) {
         System.out.println("Error!!! IllegalArgumentException");
      } catch (ReadOnlyBufferException e) {
         System.out.println("Error!!! ReadOnlyBufferException");
      }
   }
}

Output

The Original ByteBuffer is: [1, 2, 3, 4, 5]
The Duplicate ByteBuffer is: [1, 2, 3, 4, 5]
raja
Updated on 30-Jul-2019 22:30:25

Advertisements