如何将 Map<key,value>
转换为 List<value>
?我应该遍历所有地图值并将它们插入到列表中吗?
原文由 Javaa 发布,翻译遵循 CC BY-SA 4.0 许可协议
如何将 Map<key,value>
转换为 List<value>
?我应该遍历所有地图值并将它们插入到列表中吗?
原文由 Javaa 发布,翻译遵循 CC BY-SA 4.0 许可协议
这里的问题是 Map
有两个值(键和值),而 List
只有一个值(一个元素)。
因此,最好的办法是获取键或值的 List
。 (除非我们制作一个包装器来保存键/值对)。
假设我们有一个 Map
:
Map<String, String> m = new HashMap<String, String>();
m.put("Hello", "World");
m.put("Apple", "3.14");
m.put("Another", "Element");
The keys as a List
can be obtained by creating a new ArrayList
from a Set
returned by the Map.keySet
method:
List<String> list = new ArrayList<String>(m.keySet());
While the values as a List
can be obtained creating a new ArrayList
from a Collection
returned by the Map.values
method:
List<String> list = new ArrayList<String>(m.values());
得到key的 List
的结果:
苹果
其他
你好
获取 List
值的结果:
3.14
元素
世界
原文由 coobird 发布,翻译遵循 CC BY-SA 3.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
假设: