如若是基本数据类型,那么用==就不会由问题,例如

int n = 3;
int m = 3;

m == n -> true;

如果是引用类型

String str1 = "str";
String str2 = "str";

str1 == str2 -> false
str1.equals(str2) -> true

这是因为引用对象存储的是地址(这里等JVM学完后,再做科学的解释),所以两个不同的对象,地址当然不同

至于equals,在这篇文章中这里,通过分析源代码,发现重写了的equals是返回其对象值的判断

java中 == 和equals 的区别

这里得到什么启发呢?

用于判断两个对象是否在本质上是同一个对象

 MyClass obj1 = xxx.get();
 MyClass obj2 = xxx.get();

 obj1 == obj2?

相关文章:

  • 2021-08-23
  • 2021-10-18
  • 2021-06-12
猜你喜欢
  • 2021-04-29
  • 2021-10-23
  • 2021-09-01
  • 2022-01-11
相关资源
相似解决方案