有2 个数组,我用getClass都是一样的结果,但是不知道为什么他们2个即使里面的值相同,用eqals返回的是false????

解决方案 »

  1.   

    假设数组A[],B[],你如果用的是A[0].equals(B[0])肯定可以,如果你用A.equals(B),那这样比较的是地址,两个数组虽说里面的值相等,但指向的地址是不相等的
      

  2.   

    查看一下equal的源代码实现
    一切都很清楚了
      

  3.   

    数组对象默认的比较 是 地址比较 如果想比较两个数组最好用Arrays.equals(Object arr1,Object arr2)