回答
的collection-views of Map
s是通過返回的對象:在
Map#keySet()
Map#values()
Map#entrySet()
操作那些只是意味着任何方法調用集合,視圖實例。
這些視圖中的任何操作如何更改迭代順序,因爲你不能添加或獲取? – assylias
@assylias我不確定;理論上迭代集合視圖? –
LinkedHashMap具有一個通過最近訪問來排序元素的構造函數,因此完全可以想象,對集合視圖包含或其他查找操作可能會影響迭代順序。 –
如果我理解的很好,也許我沒有,收集視圖是通過其抽象獲得的Collection
,如entrySet,values和keySet。
這些集合中的操作不會影響訪問內部對象的順序LinkedHashMap
當您使用特殊構造函數使得您的對象按訪問順序排序時。
我需要學習鍵入更快哈哈:) –
這個測試應該展示它是如何工作
Map m = new LinkedHashMap(16, 0.75f, true);
m.put(1, 1);
m.put(2, 2);
m.put(3, 3);
System.out.println(m);
m.get(2);
System.out.println(m);
Set keys = m.keySet(); //API: Returns a Set view of the keys contained in this map.
keys.iterator().next();
System.out.println(m);
輸出
{1=1, 2=2, 3=3}
{1=1, 3=3, 2=2}
{1=1, 3=3, 2=2}
即,訪問入口2-2改變了迭代順序,並在訪問的第一項1-1 keySet視圖沒有
爲例。 – assylias
- 1. XStream:Generic LinkedHashMap的問題
- 2. linkedhashmap如何維護插入順序
- 3. MKOverlay順序問題
- 4. MySQL的順序由問題
- 5. SQL(MySQL的)順序問題
- 6. 排序順序問題
- 7. 如何在序列化爲GWT AutoBean時保持LinkedHashMap的順序?
- 8. GCC鏈接順序問題
- 9. Rails:範圍順序問題
- 10. 順序搜索問題
- 11. MySQL分頁順序問題
- 12. Javascript操作順序問題
- 13. 聯盟順序問題
- 14. UIView顯示順序問題?
- 15. Javascript執行順序問題
- 16. D3順序圖問題
- 17. UISegmentedControl分段順序問題
- 18. Mysql「操作順序」問題
- 19. 順序工作流問題
- 20. 在LinkedHashMap中按字母順序排序鍵
- 21. Java的LinkedHashMap是否保持鍵的順序?
- 22. LinkedHashMap排序
- 23. LinkedHashMap排序
- 24. LinkedHashMap中的entrySet()是否也可以保證順序?
- 25. AJAX響應不保留LinkedHashMap的順序從服務器
- 26. 如何在Scala中顛倒LinkedHashMap元素的順序
- 27. LinkedHashMap如何在內部保留對象的插入順序
- 28. 來自LinkedHashMap的集合(值)是否保留了插入順序?
- 29. .NET ListView的列的順序問題
- 30. Node.JS中的架構問題的順序?
「集合視圖上的操作」表示對LInkedHashMap本身的操作。請覆蓋我的[LinkedHashMap的內部生活](http://volodial.blogspot.com/2013/07/internal-life-of-linkedhashmap-in-java.html)教程 –