How to test array equality in Java
Two arrays are equal if all their values are equal and in the same order.
Arrays.equals()
The Arrays.equals method can be used to check if two arrays are equal.
This method takes two arrays as arguments.
import java.util.Arrays;class ArrayEquality {public static void main( String args[] ) {int [] arr1 = new int [] {20, 5, -95, 43, 17};int [] arr2 = new int [] {20, 5, -95, 43, 17};System.out.println(Arrays.equals(arr1, arr2));}}
Note that a shallow comparison is performed, i.e., it checks:
arr1[0].equals(arr2[0]),
arr1[1].equals(arr2[1]),
...
This is not suitable for multidimensional arrays.
Arrays.deepEquals()
The Arrays.deepEquals() method is a more effective way of testing the equality of multidimensional arrays.
This method takes two arrays as arguments.
import java.util.Arrays;class ArrayEquality {public static void main( String args[] ) {int [][] arr1 = {{20, 5},{-95, 43},{17, 22}};int [][] arr2 = {{20, 5},{-95, 43},{17, 22}};System.out.println(Arrays.deepEquals(arr1, arr2));}}
This method recurses on the arrays and compares the actual elements. It can be used with single-dimension arrays as well.
Free Resources
Attributions:
- undefined by undefined
Copyright ©2025 Educative, Inc. All rights reserved