如何将Map<K, V>
转换为列表List<K> keys
,List<V> values
,使得keys
和values
中的订单匹配?我只能用找到Set<K> Map#keySet()
和Collection<V> Map#values()
,我可以转换成列表:如何在保持顺序的同时将地图<K, V>转换为两个列表?
List<String> keys = new ArrayList<String>(map.keySet());
List<String> values = new ArrayList<String>(map.values());
但我担心的是,为了将是随机的。
这是正确的,我必须手动转换它们或有一个快捷方式?
更新:由于我能找到我喜欢与你分享,随机谷歌用户的其他有用信息的答案: How to efficiently iterate over each Entry in a Map?
我想ArrayList的保留在我们插入的顺序。 – 2013-04-08 14:15:53
@AchintyaJha是的,它的确如此。但是,由地图返回的集合是否已排序? – 2013-04-08 14:17:34
+1不假定两个集合(键和值)将具有相同的排序。 – yshavit 2013-04-08 15:08:14