我想了解爲什麼我們需要集合視圖來遍歷Java集合。爲什麼實際的Collection不用於迭代。我瞭解Views是指實際的Backed Collection和它的一個輕量級對象。是否有任何優勢,任何設計決策。集合框架:集合視圖和實際集合用於迭代
-1
A
回答
1
你的問題說「集合」。 Java Collection
是一個表示值集合的接口。值得注意的子接口是List
,Set
和Queue
,只是提到了一些。 Collection
接口是Iterable
的擴展,並且可以如此迭代。
Java的Map
是表示對值的鍵的映射的接口。它是NOTCollection
的子接口,儘管它是Java的Collections Framework的一部分。它確實是而不是延伸Iterable
,並且不能直接迭代。
由於Map
包括鍵/值對,它提供了在3種方式迭代映射方法。您可以遍歷鍵,你可以迭代值,你可以遍歷鍵/值對,分別使用keySet()
,values()
和entrySet()
。
這些是您所指的「視圖」,因爲Map
不是Collection
而不是Iterable
。
請你問一個問題更加明確下一次是,因爲所有的Collection
接口和類不需要爲了重複它們。因此,您的問題「爲什麼我們需要集合視圖來遍歷Java集合」是沒有意義的。
相關問題
- 1. ASP.NET MVC迭代集合中的集合
- 2. 集合框架
- 3. 迭代集合的子集
- 4. 迭代集合的子集
- 5. backbone.js迭代集合
- 6. Java迭代集合
- 7. vba - 迭代集合
- 8. JQuery - 集合迭代
- 9. 關於集合框架
- 10. Java集合框架
- 11. 實體框架6和集合
- 12. 等於集合視圖Java
- 13. 迭代集合時的實體框架異常
- 14. java集合vs集合框架中的地圖
- 15. 使用實體框架更新集合
- 16. 迭代骨幹集合
- 17. 在mule中迭代集合
- 18. IEnumerable vs List迭代集合
- 19. PyMongo不會迭代集合
- 20. 迭代雖然Backbone.js集合
- 21. 迭代backbone.js中的集合
- 22. Linq迭代控件集合
- 23. 迭代過嵌套集合
- 24. 嵌套集合lambda迭代
- 25. 迭代兩個集合LINQ
- 26. 迭代哈希集合
- 27. 實體框架4從實體集合
- 28. 如何迭代使用java 8流的集合的集合?
- 29. 一個通用適配器迭代項目集合集合
- 30. 實體框架(5.0)代碼優先 - 在集合中插入集合
你在說什麼觀點?沒有用於迭代列表和集合的視圖。 – Andreas
在Map中,keySet,entrySet,Values就是這樣的例子。請在上面指出一些情況。如果我錯了。 – bharatj