The equals()
method of the class java.nio.DoubleBuffer
is used to check if two buffers are equal or not. Two buffers are equal if:
Note:
- Unlike
Double.equals(Object)
, -0.0 and +0.0 are considered equal by theDoubleBuffer.equals()
method.- Two doubles f1 and f2 are considered equal by
DoubleBuffer.equals()
method if (f1 == f2) || (Double.isNaN(f1) && Double.isNaN(f2)).
The DoubleBuffer.equals()
method can be declared as:
buff1.equals(buff2);
buff1
: The first buffer checked to see if it is equal to buff2
.buff2
: The second buffer checked to see if it is equal to buff1
.The DoubleBuffer.equals()
method returns a boolean
such that:
true
if the two buffers buff1
and buff2
are equal.false
if the two buffers buff1
and buff2
are not equal
.Consider the code snippet below, which demonstrates the use of the DoubleBuffer.equals()
method:
import java.nio.*;import java.util.*;public class main {public static void main(String[] args) {int n1 = 4;int n2 = 4;try {DoubleBuffer buff1 = DoubleBuffer.allocate(n1);buff1.put(1.5);buff1.put(4.6);System.out.println("buff1: " + Arrays.toString(buff1.array()));DoubleBuffer buff2 = DoubleBuffer.allocate(n2);buff2.put(1.5);buff2.put(4.6);System.out.println("buff2: " + Arrays.toString(buff2.array()));boolean foo = buff1.equals(buff2);System.out.println("\nbuff1 equal to buff2: " + foo);} catch (IllegalArgumentException e) {System.out.println("Error!!! IllegalArgumentException");} catch (ReadOnlyBufferException e) {System.out.println("Error!!! ReadOnlyBufferException");}}}
DoubleBuffer
buff1
is declared in line 8. Two doubles are written to buff1
in lines 9-10.DoubleBuffer
buff2
is declared in line 13. Two doubles are written to buff2
in lines 14-15.DoubleBuffer.equals()
method is used in line 18 to check if the buffers buff1
and buff2
are equal. TheDoubleBuffer.equals()
method returns true
because buff1
and buff2
are equal.Consider the code snippet below, which compares two unequal buffers:
import java.nio.*;import java.util.*;public class main {public static void main(String[] args) {int n1 = 4;int n2 = 5;try {DoubleBuffer buff1 = DoubleBuffer.allocate(n1);buff1.put(1.5);buff1.put(4.6);System.out.println("buff1: " + Arrays.toString(buff1.array()));DoubleBuffer buff2 = DoubleBuffer.allocate(n2);buff2.put(1.5);buff2.put(4.6);System.out.println("buff2: " + Arrays.toString(buff2.array()));boolean foo = buff1.equals(buff2);System.out.println("\nbuff1 equal to buff2: " + foo);} catch (IllegalArgumentException e) {System.out.println("Error!!! IllegalArgumentException");} catch (ReadOnlyBufferException e) {System.out.println("Error!!! ReadOnlyBufferException");}}}
DoubleBuffer
buff1
is declared in line 8. Two doubles are written to buff1
in lines 9-10.DoubleBuffer
buff2
is declared in line 13. Two doubles are written to buff2
in lines 14-15.DoubleBuffer.equals()
method is used in line 18 to check if the buffers buff1
and buff2
are equal. TheDoubleBuffer.equals()
method returns false
because the number of elements of buff1
is 4 and the number of elements of buff2
is 5, which is not equal.Free Resources