首页 > 代码库 > java 数组的 toString 方法和 equals 方法以及 java.lang.Object 对象的 toString 方法和 equals 方法

java 数组的 toString 方法和 equals 方法以及 java.lang.Object 对象的 toString 方法和 equals 方法

 1 public class Test {
 2     public static void main(String[] args) {
 3         int[] a = {1, 2, 4, 6};
 4         int[] b = a;
 5         int[] c = {1, 2, 4, 6};
 6         
 7         //下面这个方法打印的是a数组的引用地址
 8         System.out.println(a.toString());
 9         //下面这个方法比较的是两个数组的引用是否相等
10         System.out.println("a.equals(b):"+a.equals(b));
11         //下面这个方法才是a数组真正的toString方法       
12         System.out.println(Arrays.toString(a));
13         //下面这个方法才是数组真正的equals方法
14         System.out.println("Arrays.equals(a,c):"+Arrays.equals(a, c));
15     }
16 }

总结:java 数组没有重写 toString 方法和 equals 方法,当我们直接调用一个 java 对象的这两个方法的时候,实际上调用的是 java.lang.Object类里的这两个方法。

   要实现数组类自己的这两个操作必须要通过 java.util.Arrays 类的 toString() 方法和 equals(a , b) 这两个静态方法。

注意:java.lang.Object 这个类的 toString 方法打印出来的是对象的引用地址;equals()方法默认比较的是两个对象的引用。

java 数组的 toString 方法和 equals 方法以及 java.lang.Object 对象的 toString 方法和 equals 方法