Java面试题(10)Java中==、equals()、compareTo()的区别
序言
==
基本数据类型都用这个比较
Java里面包含8个基本数据类型,分别是: boolean、byte、char、short、int、float、double、long
equals()
equals是对对象内容的比较
compareTo
在API中,java.lang包下面的基本数据类型的封装类都提供了该方法。
- 在基本数据中,equals()是比较2个Character对象;
- 在Boolean中,是boolean的实例与其它实例进行比较
- 在String中,是按照字典顺序进行比较,返回值是一个int类型
在遇到浮点数的时候,千万不要使用“==”操作符来进行比较,因为有精度问题。要么使用阈值来忽略舍入的问题,要么使用 BigDecimal 来替代 double 或者 float。
小结
所以,总结如下:
- “==”是对对象内存地址的比较
- equals()是对对象内容的比较
- 对于基本数据类型一般用“==”
- 对于字符串的比较一般用equals()
资料
分类:
【113】Java面试题
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2018-07-19 Java MyBatis3(5)ResultMap详解
2016-07-19 .Net并行编程(3)线程安全与同步机制(锁、信号量)