java基本数据类型的比较:
对于基本数据类型来说,==比较的是他们的值(值比较) 代码如下:
int a = 2;
int b = 3;
int c = 2;
System.out.println(a == b);
System.out.println(a == c);
int b = 3;
int c = 2;
System.out.println(a == b);
System.out.println(a == c);
最后结果为:turn
turn
java引用类型的比较:
对于引用数据类型来说,==比较的是他们的引用的对象实体指(内存地址)
Person p1 = new Person("tom", 13);
Person p2 = new Person("jerry", 23);
Person p3 = new Person("tom", 13);
Person p4 = p1;
Person p2 = new Person("jerry", 23);
Person p3 = new Person("tom", 13);
Person p4 = p1;
System.out.println(p1.equals(p2)); flose
System.out.println(p1.equals(p3)); flose
System.out.println(p1.equals(p4)); turn
引用数据类型的比较是: 重写Object对象中的equals方法
System.out.println(p1.equals(p3)); flose
System.out.println(p1.equals(p4)); turn
引用数据类型的比较是: 重写Object对象中的equals方法
如果直接打印一个对象,默认是调用的toString方法