import java.util.Arrays;

class ArraysEquals...{
public static void main(String[] args)...{
int[] q = new int[]...{1,2,3};
int[] p = new int[]...{1,2,3};
boolean equals1 = equals1(q,p);
boolean equals2 = equals2(q,p);
System.out.println("Arrays.equals(q,p)的结果:" + equals1);
System.out.println("q.equals(p)的结果:" + equals2);
}

static boolean equals1(int[] q,int[] p)...{
if(Arrays.equals(q,p))
return true;
else
return false;
}

static boolean equals2(int[] q,int[] p)...{
if(q.equals(p))
return true;
else
return false;
}
}运行结果:
Arrays.equals(q,p)的结果:true
q.equals(p)的结果:false
结论:
Arrays.equals(q,p)是比较两个arrays是否有相同个元素,每个元素是否相等。
q.equals(p)等同于q == p。
本文通过示例对比了两种数组比较方法:使用Arrays.equals进行元素级比较与直接使用数组的equals方法进行引用比较的区别。揭示了Arrays.equals能正确判断两个数组是否相等,而简单使用equals则仅判断引用是否相同。
705

被折叠的 条评论
为什么被折叠?



