pen*_*001 11 java comparator treeset
TreeSet使用相同的Comprator值删除不同的项目.我不希望它被删除.有没有办法控制这个?或者使用另一个容器类?
补充:好的.好像我不能用Set.出于性能考虑,我需要插入排序功能.Can List可以这样做吗?谢谢大家.
即使它是一个集合,这仍然令人困惑,因为对象是不同的.例如,一个Set<E>
不同的对象E
在转换为TreeSet<E>
基于Comparator<E>
使用的对象时会丢弃一些对象.在这两种情况下,它都是一个集合,但存储的元素集将是不同的.在我看来,这在文档中并未得到很好的澄清.
一个简单的解决方案,如果您可以更改比较器,则不要返回0.例如,而不是:
public int compare(Integer o1, Integer o2) {
return o1.compareTo(o2);
}
Run Code Online (Sandbox Code Playgroud)
使用:
public int compare(Integer o1, Integer o2) {
return o1 < o2 ? -1: 1;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
17524 次 |
最近记录: |