equals和==

package Test;

import demo.Student;

public class TestStudent {
public static void main(String[] args) {
Student str1=new Student("李四","31岁");
Student str2=new Student("李四","31岁");
System.out.println("str1==str2比较结果为:"+(str1==str2));
System.out.println("str1.equals(str2)比较结果为:"+(str1.equals(str2)));
//==引用型就比较的是对象是不是同一个,原始数据类型就比较的值
//object里面的equals而没被重写的equals是比较对象,被重写了就比较的值
/*都是被重写了equals的
java.io.file
java.util.Date
java.lang.String包装类(Integer,Double等)
*/
/**
* 原始数据类型保存在栈中,保存的是实际值;
* 引用类型也保存在栈中,保存的是一个实际对象的地址。
* 对象引用实例变量的缺省值为 null,而原始类型实例变量的缺省值与它们的类型有关
* */
}
}

原文地址:https://www.cnblogs.com/wenyi1993/p/4551423.html