Intersection of java.util.Map
How about:
Map map1 = ...;
Map map2 = ...;
Map result = new ...(map1);
result.keySet().retainAll(map2.keySet());
or:
Map map1 = ...;
Map map2 = ...;
Set result = new ...(map1.keySet());
result.retainAll(map2.keySet());
Guava's Sets.intersection(Set, Set)
should do the job, with the keySet of each Map passed in as parameters.
If you're using Guava, you can use Maps.difference
to get a MapDifference
object, from which you can extract the entriesInCommon()
and entriesDiffering()
as maps. (Disclosure: I contribute to Guava.)