这两个东西初学java的时候就了解了,但那时只是大概的知道判断数字相等就用==,String字符串相等就用equals,后来也有去网上看了一下具体区别,但是,每隔一段时间理解就会变得模糊,所以在这里记录一下:
1,对于==
1)、作用于基本数据类型(也就是8大基本数据类型)变量:比较的是其中的数值;
2)、作用于引用数据类型变量:比较的是两个引用数据类型变量的地址,Object中equals方法,就是用==实现的,所以跟==功能一样;
2,对于equals方法
1)、equals方法不能用于基本数据类型
2)、如果没有对equals方法进行重写,则比较的是引用类型变量指向的地址,跟直接使用==的功能一样,一些引用类型对equals方法进行了重写,例如:String、Date、8大基本数据类型所对应的包装类