Why is the following code printing \"Different.\"?
boolean[][] a = { {false,true}, {true,false} };
bool
Why is the following code printing
"Different."?
Because Arrays.equals performs a shallow comparison. Since arrays inherit their equals-method from Object, an identity comparison will be performed for the inner arrays, which will fail, since a and b do not refer to the same arrays.
If you change to Arrays.deepEquals it will print "Equal." as expected.