Utilities: Arrays.deepEquals compares nested arrays, equals does not

Arrays.equals only checks references for nested array elements, so two arrays of arrays with equal contents compare unequal; Arrays.deepEquals recurses into the nested arrays and compares their actual contents.

Code
int[][] first = {{1, 2}, {3, 4}};
int[][] second = {{1, 2}, {3, 4}};
System.out.println("Arrays.equals: " + Arrays.equals(first, second));
System.out.println("Arrays.deepEquals: " + Arrays.deepEquals(first, second));
Output
Arrays.equals: false
Arrays.deepEquals: true
Advertisement
More in JAVA

Run this yourself in the Online Java Compiler, spin up a live REST API in the API Sandbox, or practise with Java interview questions.

Published 2026-09-27

© Java Coding Hub · About · Contact · Privacy · Terms