Comparing HashMaps in Java
I have two HashMaps: FOO & BAR.
HashMap FOO is a superset of HashMap BAR.
How do I find out what 'keys' are missing in HashMap B开发者_如何转开发AR (i.e. exists in FOO but not BAR)?
Set missing = new HashSet(foo.keySet());
missing.removeAll(bar.keySet());
If you're using google-collections (and realistically I think it should be on the classpath of more or less every non-trivial Java project) it's just:
Set<X> missing = Sets.difference(foo.keySet(), bar.keySet();
精彩评论