一、“==”
- ==在JAVA中只是一个运算符号。
- ==是判断两个变量或实例是不是指向同一个内存地址。
- == 如果比较的是基本数据类型,比较的是值,如果比较的是引用数据类型,那么比较的是对象的内存地址
二、equals
- equals在JAVA中是一个方法。
- equals是判断两个变量或实例所指向的内存空间的值是不是相同。
- 通常用做引用数据类型的比较,如果对象没有重写equals方法,那么比较的是对象的内存地址的一个hash值,如果重写了equals方法,那么比较规则根据你重写的方法来,需要注意的是,重写equals方法则必须同时重写hashcode方法,因为很多集合容器类是根据对象的hashcode方法来比较对象是否相同的