当两个数组的顺序相同时,此代码将返回祝贺。我打印了两个数组作为测试,它们成为相同的顺序,但消息“祝贺”不打印。有人可以帮忙吗?
boolean truefalse = Arrays.equals(original, currentarr);
if (truefalse == true){
System.out.println("Congratulations");
var1 = var1 + var2;
}
答案 0 :(得分:4)
Arrays.equals(Object[] a, Object[] a2)
将数组成员与equals
进行比较。因此,对于2D数组,当成员本身是数组时,它会比较引用(因为数组不会覆盖Object
的{{1}})。
改为使用equals
。