内容简介:翻译自:https://stackoverflow.com/questions/1743017/most-compact-way-to-compare-three-objects-for-equality-using-java
比较三个对象(语义)相等的最紧凑的代码是什么?我有一个业务规则,即对象必须是唯一的,即A与B不同,A与C不同,B与C不同.
假设这些对象都是同一个类,并且正确地重写了equals和hashCode方法.轻微的皱纹是对象C可能为空 – 如果是这种情况,那么A和B必须彼此不同.
我有一些代码,但它有点像我的口味工作.
由于OP表示A和B永远不为空,C可能为null,使用此:
if(A.equals(B) || B.equals(C) || A.equals(C)) // not unique
并且,正如其他人已经建议的那样,您可以将其放入重用方法中.或者如果您需要更多重用的通用方法;-)
请注意,在 Java 中,equals的一个特性是,如果其参数为null,则不应抛出,而是返回false.
翻译自:https://stackoverflow.com/questions/1743017/most-compact-way-to-compare-three-objects-for-equality-using-java
以上所述就是小编给大家介绍的《最简洁的方法是使用Java比较三个对象是否相等?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- JS面试题之比较两个对象是否相等?
- 【重温基础】18.相等性判断
- php比较两个浮点数是否相等
- CSS Flexbox 之間距相等
- c# – 比较两个(Integer)列表是否相等
- 在 Python 中判断两个浮点数的相等
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
JavaScript & jQuery
David Sawyer McFarland / O Reilly / 2011-10-28 / USD 39.99
You don't need programming experience to add interactive and visual effects to your web pages with JavaScript. This Missing Manual shows you how the jQuery library makes JavaScript programming fun, ea......一起来看看 《JavaScript & jQuery》 这本书的介绍吧!