gpt4 book ai didi

java - Java 中 Set 和 SortedSet 接口(interface)之间的逻辑不一致

转载 作者:搜寻专家 更新时间:2023-11-01 01:44:47 25 4
gpt4 key购买 nike

<分区>

我注意到 Java 中的 Set 和 SortedSet 接口(interface)之间存在逻辑上的不一致。

SortedSet 在比较过程中,如果不同的对象(通过 equal() 方法)相同,则将它们识别为相等,但这在逻辑上是不正确的。对象的比较应该只对对象的顺序负责。

例如:我可以有很多产品,我想按价格对它们进行排序。在这种情况下,SortedSet 不能包含具有相同价格的不同产品:[“盐”,0.5$],[“牛奶”,1$],[“面包”,1$],[“香蕉”,2$]在上面的示例中,牛奶将被面包代替。在这种情况下,继承 Set 接口(interface)的契约将被违反,因为不相等的对象会相互替换。我阅读了 SortedSet 的 JavaDoc,并且知道这种行为有很好的记录,但我认为这是一个合乎逻辑的失败。

你怎么看,也许你已经对 Set 和 SortedSet 有过类似的问题?

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