包装类型间的相等判断应该用equals,而不是'!='
Inspection info:
所有的包装类对象之间值的比较,全部使用equals方法比较。
说明:对于Integer var=?在-128至127之间的赋值,Integer对象是在IntegerCache.cache产生,会复用已有对象,
这个区间内的Integer值可以直接使用==进行判断,但是这个区间之外的所有数据,都会在堆上产生,并不会复用已有对象,
这是一个大坑,推荐使用equals方法进行判断。
Integer a = 235;
Integer b = 235;
if (a.equals(b)) {
// code
}
包装类型间的相等判断
未经允许不得转载:搜云库技术团队 » 包装类型间的相等判断
相关推荐
- 文件传输不止有FTP还有SCP,真的秀
- 你们要的MyCat实现MySQL分库分表来了
- ThinkPHP多语言如何实现你了解过吗?
- 什么?你还不会断点调试代码
- 快看,虚拟机跟宿主机之间竟然可以使用SVN
- 使用rpm指令1秒删除不需要的包
- 良心之作送你几个Xsheel使用小技巧
- 面试问Redis集群,被虐的不行了......
- Redis哨兵原理,我忍你很久了!
- 写给大忙人的Redis主从复制,花费五分钟让你面试不尴尬
- Redis删除策略和逐出策略
- 一文带你了解Redis持久化完整版本
- 一文搞定Redis五大数据类型及应用场景
- 解决Redis容器使用Redis.conf启动失败
- Redis安装大全涵盖Windows Linux Docker
- MYSQL 连接查询算法