作者:六尾11 | 来源:互联网 | 2022-12-12 14:41
如何解决《HowtoretrievecommonkeysfromtwohashMapsandputtheresultintoaArrayList》经验,为你挑选了1个好方法。
1> Tim Biegelei..:
在当前代码中,您实际上是在比较两个映射中给定键的值.实际上,你真的只想在这里取两个键集的交集,所以这样做:
Set s1 = mapA.keySet();
Set s2 = mapB.keySet();
s1.retainAll(s2);
List result = new ArrayList<>();
result.addAll(s1);
如果我们担心不破坏原始mapA
地图,那么我们可以从该地图制作密钥集的副本:
TreeSet s1 = new TreeSet(mapA.keySet());
Set s2 = mapB.keySet();
s1.retainAll(s2);
List result = new ArrayList<>();
result.addAll(s1);