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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 方法的主要内容,如果未能解决你的问题,请参考以下文章

Java中数组元素以toString()方法输出的问题,谁能帮帮我啊!

您好,请问java中tostring方法如何输出对象数组??

Object类

list.contains方法既然是调用equ 方法 还用重写 hashcod吗

如何在Java中使用toString方法将int数组转换为String [重复]

java toString()