戳这里了解《Flutter入门与实战》专栏,持续更新、系统学习!
前言
通常来说我们不会去实现类的自定义的相等判断,这个时候构建的任何对象因为值不同或 hash code不同,使用==
判断的时候都是返回 false
的。而在某些场合,如果我们想要直接使用==
来判断自定义类是否相等的话,则需要同时覆盖==
操作符和 hashCode
方法。在使用自定义的对象相等性实现时,编码需要注意哪些事情,本篇来为你总结相关内容。
对象相等判断
我们先来看 Java 语言中很经典的一道面试题,即下面的代码控制台输出结果是什么。
Integer a=127;
Integer b=127;
System.out.println(a==b);
Integer c=128;
Integer d=128;
System