阵列有人能解释为什么,A.equals(B)
是false
,当我使用int[] B = A.clone()
但true
如果我使用int[] B = A
发起B
启动B
?问题有关使用Java
int[] A = {1, 2, 3, 4, 5};
int[] B = A;
//int[] B = A.clone();
if(A==B){//true
System.out.println("Equal");
}
if(A.equals(B)){//true
System.out.println("Equal");
}
我想这与StringBuilder/StringBuffer,AtomicInteger等没有实现equals做“内容比较” - 它们通常不应该被用作映射的键,因为它们被改变了。 – 2011-02-23 18:47:31
@Paulo +1提到为什么等于它是它在哪里。 (这句话在语法上是正确的:-O !!) – corsiKa 2011-02-23 18:49:55