JAVA面试题---------- equals()和==

本文详细介绍了Java中equals()方法的工作原理。默认情况下,equals()和==操作符都会比较对象的地址,但在某些类中(例如String和Integer)进行了重写以比较对象的内容。对于自定义类,如果没有重写equals()方法,则其行为类似于==操作符。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

equals()是object中的方法

默认情况下当比较引用类型数据的时候,equals()和==都是比较对象的地址

 这是Object类中equals的实现方法,和==作用一样


 只是对java中定义的引用类型,都重写了equals()方法,使得他比较对象的内容,当然先判断地址是否相同,如果==为true,俺就不在比较对象的内容,返回true。典型的如在String类中:


在Integer类中,通过转化成对应的基本类型,用==进行值的比较,所以也比较的内容:

 

 那么在我们自己定义的类中,如果没有重写equals()方法,就和==一样比较的是对象的地址。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值