爲什麼訂購LinkedHashMap
? 如果它實現了Map
接口和擴展AbstractMap
和HashMap
, 它們哪提供了排序功能?爲什麼要訂購LinkedHashMap?
-2
A
回答
0
哈希表的文檔和Map接口的鏈接列表實現,具有可預知的迭代順序。這個實現與HashMap的不同之處在於它保持了一個雙向鏈表,它貫穿其所有條目。這個鏈表定義了迭代排序,這通常是鍵被插入映射的順序(插入順序)。
所以訂貨來自LinkedHashMap的執行,而不是從擴展java.util.AbstractMap<K,V>
或java.util.HashMap<K,V>
0
LinkedHashMap
是有序的,因爲這是其合同的一部分。例如參見http://docs.oracle.com/javase/7/docs/api/java/util/LinkedHashMap.html,例如「Map接口的哈希表和鏈表實現,具有可預測的迭代順序」。
它還說明它與HashMap
的不同之處:「該實現不同於HashMap,因爲它保持一個雙向鏈接列表,它貫穿其所有條目。」
相關問題
- 1. 在Android中,如何訂購LinkedHashMap?
- 2. 爲什麼Scala List沒有訂購?
- 3. 爲什麼在SQLite表中訂購需要更多空間?
- 4. LinkedHashMap訂單
- 5. 爲什麼LinkedHashMap沒有實現SortedMap?
- 6. 我爲什麼要購買ReSharper或CodeRush?
- 7. 爲什麼訂單很重要?
- 8. 訂購和排序有什麼區別?
- 9. 需要訂購使用Linq
- 10. MySQL(客戶要訂購)
- 11. jQuery倒退prepend要訂購
- 12. 訂購時爲什麼不使用索引?
- 13. 爲什麼字符集出現需訂購?
- 14. 爲什麼MySQL沒有像預期的那樣訂購?
- 15. C++中的類佈局:爲什麼會員有時會訂購?
- 16. 爲什麼我的linq訂購不起作用
- 17. LINQ OrderBy沒有訂購..沒有改變..爲什麼?
- 18. 爲什麼@ResponseBody將排序的LinkedHashMap返回爲未排序?
- 19. 爲什麼訂購std :: map並且訂購std :: set沒有被邀請進行transaction_safe?
- 20. 什麼是LinkedHashMap <k, v>?
- 21. 訂購版本號爲
- 22. 訂購
- 23. 訂購
- 24. 訂購
- 25. 訂購
- 26. 自定義比較(訂購)作爲(多)地圖訂購參數?
- 27. 爲什麼要爲
- 28. Sharepoint - 不要訂購列信息
- 29. 若要在createcritera.list中訂購空值
- 30. 幫助需要訂購搜索結果