#每天一个知识点# Java之Objects.equals的坑
举例:调用Integer的equals方法,必须要求入参也是Integer类型,否则该方法会直接返回false。
原理:equals方法的判断逻辑如下:
1. 该方法先判断对象a和b的引用是否相等,如果相等则直接返回true。
2. 如果引用不相等,则判断a是否为空,如果a为空则返回false。
3. 如果a不为空,调用对象的equals方法进一步判断值是否相等。
场景坑:
1. Long类型和Integer类型比较,比如:用户id的场景。
2. Byte类型和Integer类型比较,比如:状态判断的场景。
3. Double类型和Integer类型比较,比如:金额为0的判断场景。
展开
评论