java -- ==与equals的区别
java -- ==与equals的区别
求是科技 发表于1年前
java -- ==与equals的区别
  • 发表于 1年前
  • 阅读 10
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

java的数据类型分为两种
1.基本数据类型:byte、char、long、int、float、double、boolean
它们之间的比较应该使用"==",比较的是它们的值。
2.复合数据类型:class 类名
类就是复合类型。 当用"=="比较它们的时候,实际上比较的是它们在内存中的存放地址,即栈中的值。因此,只有同一个new出来的对象它们用"=="比较是true,其他的都为false。
equals()比较的是堆中的值,即比较的是内容值。如果复合数据类型之间进行equals比较,在没有覆写equals的情况下,比较的还是栈中的值,即地址值。只有覆写了hashcode与equals方法,才比较堆中的值。

共有 人打赏支持
粉丝 88
博文 438
码字总数 222864
×
求是科技
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: