回答
「有序」指的是存在其中的元素可以被檢索到的定義的順序。這意味着,當您遍歷集合時,您知道按哪個順序獲取元素。
在這種情況下它意味着「排序」(因爲TreeSet中根據給定的比較器排列的元件,即它對其進行排序)。
在其他情況下(例如,隊列),它可以意味着「插入順序」。
在名單的情況下,你可以指定自己的命令(通過指定每個元素的索引),而列表將讓他們在這個順序(即獨立的廣告訂單或任何排序順序)。
對比度這個到HashSet,在檢索時,這使得關於元素的順序沒有保證。
一個'List'將是一個有序的但不是[必然]排序的集合的明顯例子。 'LinkedHashSet'有一個關於它的命令。 – 2011-12-28 01:47:52
更新了一個提到列表,謝謝。 – Thilo 2011-12-28 01:51:02
是的。它使用其元素類型的自然排序順序(例如,字符串的字母順序,整數的數字順序等)排序,除非提供比較器來定義排序順序。
這些元素使用它們的自然順序或在創建集合時提供的Comparator進行排序,具體取決於使用哪個構造函數。
在TreeSet
的順序,從Javadoc:
根據
TreeMap
一個NavigableSet實現。這些元素使用它們的自然順序或者在創建集合時提供的比較器進行排序,具體取決於使用哪個構造函數。
這裏的「自然順序」是指類可以實現Interface Comparable,它允許您指定compareTo()
的行爲。
您還可以使用TreeSet
構造函數,它允許你指定一個Comparator
類,將決定排序的類型:http://docs.oracle.com/javase/6/docs/api/java/util/TreeSet.html#TreeSet(java.util.Comparator)
- 1. 排序算法的列表,設置,地圖,樹和圖
- 2. Python樹遍歷和排序排序列表中的項目組
- 3. java中的排序列表中的排序
- 4. 在Datatable中設置默認排序列
- 5. 在SlickGrid中設置默認排序列
- 6. 排序在java中有列表的對象的列表
- 7. 設置列表的正確排序
- 8. 在java鏈接列表中排序
- 9. 在Java中排序數組列表
- 10. 基於自定義用戶設置的排序列表
- 11. 按java中子列表中的屬性對列表排序
- 12. 帶有排序列表的AVL樹?
- 13. 將二叉樹元素排序到Prolog中的列表中?
- 14. 如何排序一個數組列表並設置另一個列表中的java相同的順序
- 15. 排序父樹列表在前面葉
- 16. 如何在java中存儲,排序和分組項目(列表/設置/映射)?
- 17. 意外放置列表中的列表?
- 18. 排序一個列表到任意數量的名單均勻地在Java中
- 19. 在Prolog中設置的功率排列
- 20. 的Java:排序列表的列表與中將sortOrder
- 21. R中自定義類的元素列表的排序列表?
- 22. 意義{}在java中
- 23. 在共享偏好設置中安全排序列表
- 24. 列表刻字和無序排列的問題在Java中
- 25. Groovy中的樹排序
- 26. 在Java中的排序鏈接列表中插入
- 27. 組的列表和排序在Java
- 28. java中的轉義序列
- 29. 排序列表中的
- 30. elasticsearch中的列表排序
是的,它意味着排序。 – Thilo 2011-12-28 01:41:01
@Thilo Ordered比排序更一般。 – 2011-12-28 01:48:22
在這種情況下,它意味着排序,但。請參閱下面的答案。 – Thilo 2011-12-28 01:51:44