2012-02-12 18 views
0

事實上,它尚未添加到界面使我認爲必須有一些有效的理由。雖然我認爲你不應該愉快地傳遞集合,因此,實現類很少出現在類的接口中,以防需要反向迭代,但它仍然會改進SortedSet接口。爲什麼在SortedSet中沒有「descendingIterator()」,但它在TreeSet中?

+1

可能有一個不支持反向遍歷的排序集合(例如,在插入時排序的單個鏈表)。 – rsp 2012-02-12 12:19:32

+0

不要認爲核心Java API設計有其原因。在許多情況下,它只是沒有適當的思想。 – skaffman 2012-02-12 12:25:45

+0

P.S.我建議你把它變成一個實際的可回答的問題,否則它可能會被關閉。 – skaffman 2012-02-12 12:26:29

回答

4

descendingIterator在1.6中引入。 SortedSet是1.2中引入的interface。您不能將方法添加到interface(JDBC是「特殊」)。爲了方便添加額外的方法到一個有序集合界面,1.6添加了一個不知名的NavigableSet(和NavigableMap)。這是SortedSet的替代品。舊的實現應該用這個新的接口進行改進。

+0

當然,愚蠢的我,你不能添加接口的方法。另外,我不知道NavigableSet是作爲SortedSet的擴展。謝謝,那很有用。 – DPM 2012-02-12 13:19:45

+0

@Jubbat,如果這是真的,那麼所有接口將是空的。 – 2012-02-12 16:10:07

+0

「**新**方法」,更好? :) – DPM 2012-02-12 19:36:42

相關問題