很明显equals()
(而且当然hashCode()
)在处理不可变值对象时很有价值——映射键、需要在包含它们的对象之间进行比较的强类型字段值等。
但除了值对象之外,您有多少可能真正拥有两个独立构造的实例并希望它们成为equal
?
我很难想象一个现实的场景,引用平等不会,de facto,给你你想要的;在这些特定情况下,它似乎是一种特定于场景的等效方法(isEquivalentTo(Foo)
而不是equals(Object)
)会更安全。特别是对于可变对象?
有什么用途equals()
在非值类型中?
Um. Set<E>
是可变的,并且有一个(有用的)定义equals()
。看来这也没什么用啊...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)