Java中“==”与“equals()”的区别

==

  1. 可用于基本数据类型和引用数据类型的比较。
  2. 基本数据类型比较的是数值是否相等,注:34和34.0f用“==”比较返回的也是true。
  3. 引用数据类型比较的是对象的地址值是否相等,注:String类的对象存放在方法区的常量池当中,一旦为某个String类对象开辟了空间,之后对于字符串值相同的String类对象不再开辟新的空间,而是共用同一地址值。

equals()

  1. 只能用于引用数据类型的比较。
  2. 默认情况下调用的是Object类的equals()方法,底层是用“==”进行判断,比较的也是两对象的地址值是否相等。
  3. String类、Date类、包装类等都对equals()方法进行了重写,比较的两对象的值是否相等。
发布了5 篇原创文章 · 获赞 0 · 访问量 52

猜你喜欢

转载自blog.csdn.net/za_zhi/article/details/105600335