我想在SortedSet
| SortedMap
。equals和compareTo是否有意義不一致?
class MyClass implements Comparable<MyClass>{
// the only thing relevant to comparisons:
private final String name;
//...
}
類的實例必須按其name屬性進行排序。
但是,我不希望同樣命名的實例被認爲是平等的。
因此,SortedSet
的內容看起來像a,a,a,b,c。
(通常情況下,SortedSet
只允許A,B,C)
首先:是這樣的(哲學)是否一致?
如果是這樣,我必須想到不可預知的行爲,當我不 覆蓋equals(...)
和hashCode()
?
編輯:
我很抱歉,我的問題似乎不一致:
我想把多個「平等」的價值觀一個內設置,不允許這種 的概念。
所以,請不要回復我的問題了。
感謝所有已經回覆的人。
爲什麼不只是使用不同的集合類型? – 2009-04-28 02:02:38
是的,google-collection-API的MultiSet | MultiMap對此似乎很好。 我非常希望Sun,aehm和Oracle人們有一天會爲Java收集API添加功能... – 2009-04-28 07:09:37