如果我总是在Comparator.compare()中返回0,为什么我最终在我的Set中有1个项目?

时间:2015-03-20 18:46:28

标签: java collections

我为TreeSet编写了一个自定义Comparator。为了调试,我决定硬连线“compare()”以始终返回0.令我惊讶的是,一个项目被输入到Set中。

为什么会这样?我正在尽力理解“set.add()”和“compare()”之间的关系。

1 个答案:

答案 0 :(得分:6)

始终返回零意味着所有项目都等于所有其他项目。

这不会阻止您添加单个可能的项目。