如何比较重复的数组

时间:2017-01-28 02:12:19

标签: java arrays

最近,我想你可以复制像这样的数组

System.arraycopy(src,0,dup,0,src.length);

但是,即使两个数组相同,使用

进行比较时也是如此
if(src==dup)
   ...//print true
else if(src!=dup)
   ...//print false

它总是打印错误。有没有反复复制一个不会改变原始数组的数组,同时还能正确地比较这两个数组?

3 个答案:

答案 0 :(得分:1)

正如amahfouz在他的回答中所述,比较了两个不同数组的引用(以你在帖子中写的方式)。

因此,为了能够比较元素,你应该遍历它们。

您可以导入Java.util.Arrays ,并执行以下操作:

if(Arrays.equals(src, dup))
    System.out.println("Equal");
else
    System.out.println("Not Equal");

答案 1 :(得分:0)

等式测试只是比较引用,而不是内容,因此对于两个不同的数组引用,它总是返回false。

答案 2 :(得分:0)

您需要使用

Arrays.equals()