通过执行以下操作,我能够做到这一点:
Iterable<Map.Entry<A,B>> entryIterable
Map<A, B> aBMap = newHashMap();
for (Map.Entry<A, B> aBEntry : entryIterable) {
aBMap.put(aBEntry.getKey() , aBEntry.getValue());
}
Run Code Online (Sandbox Code Playgroud)
使用Guava有更简单的方法吗?
不,这被拒绝,请参阅Idea Graveyard:
从创建地图
Iterable<Pair>
,Iterable<Map.Entry>
,Object[]
(交替键和值),或从List<K>
+List<V>
请注意,我们仍然可以添加
ImmutableMap.copyOf(Iterable<Entry>)
.