ByteBuffer equals() method in Java


The equality of two buffers can be checked using the method equals() in the class java.nio.ByteBuffer. Two buffers are equal if they have the same type of elements, the same number of elements and the same sequence of elements. The method equals() returns true if the buffers are equal and false otherwise.

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(n);
         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 first ByteBuffer is: " + Arrays.toString(buffer1.array()));
         ByteBuffer buffer2 = ByteBuffer.allocate(n);
         buffer2.put((byte)1);
         buffer2.put((byte)2);
         buffer2.put((byte)3);
         buffer2.put((byte)4);
         buffer2.put((byte)5);
         buffer2.rewind();
         System.out.println("The second ByteBuffer is: " + Arrays.toString(buffer2.array()));
         boolean flag = buffer1.equals(buffer2);
         if (flag)
            System.out.println("
Both the buffers are equal"); else System.out.println("
Both the buffers are not equal"); } catch (IllegalArgumentException e) { System.out.println("Error!!! IllegalArgumentException"); } catch (ReadOnlyBufferException e){ System.out.println("Error!!! ReadOnlyBufferException"); } } }

Output

The first ByteBuffer is: [1, 2, 3, 4, 5]
The second ByteBuffer is: [1, 2, 3, 4, 5]
Both the buffers are equal
Samual Sam
Samual Sam

Learning faster. Every day.


Advertisements