gpt4 book ai didi

java - 对象比较通用合约 : equals() and hashCode()

转载 作者:行者123 更新时间:2023-12-02 17:59:54 25 4
gpt4 key购买 nike

equals方法的一般契约中有一点,如果你定义了equals()方法,那么你还应该定义hashCode()方法。如果o1.equals(o2)那么这必须是o1.hashCode() == o2.hashCode()

所以我的问题是如果我违反这份契约(Contract)怎么办?当 o1.equals(o2)o1.hashCode != o2.hashCode() 时,哪里会出现失败的情况?

最佳答案

这将导致基于哈希的数据结构出现意外行为,例如:HashMapRead how HashTable works

关于java - 对象比较通用合约 : equals() and hashCode(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14557695/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com