Как можно проверить, содержит ли словарь map1 все пары <Key, Value>, содержащиеся в map2?
В зависимости от того, нужно ли вам проверять только наличие в map1 всех ключей из map2, или еще и равенство соответствующих значений, можете использовать один из двух методов:
static boolean containsAllEntries(Map<?,?> map1, Map<?,?> map2) {
return map1.entrySet().containsAll(map2.entrySet());
}
static boolean containsAllKeys(Map<?,?> map1, Map<?,?> map2) {
return map1.keySet().containsAll(map2.keySet());
}
public static void main(String[] args) {
HashMap<String, String>
map1 = new HashMap<>(), map2 = new HashMap<>();
map1.put("1", "Один"); map2.put("1", "Один");
map1.put("2", "Два"); map2.put("2", "Два");
map1.put("3", "Три"); map1.put("3", "Три");
map1.put("4", "Четыре");
map1.put("5", "Пять");
System.out.println("map1 contains all keys from map2: " + containsAllKeys(map1, map2));
System.out.println("map1 contains all entries from map2: " + containsAllEntries(map1, map2));
map1.put("2", "Не два!");
System.out.println("map1 contains all keys from map2: " + containsAllKeys(map1, map2));
System.out.println("map1 contains all entries from map2: " + containsAllEntries(map1, map2));
map1.remove("2");
System.out.println("map1 contains all keys from map2: " + containsAllKeys(map1, map2));
System.out.println("map1 contains all entries from map2: " + containsAllEntries(map1, map2));
}
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости