Python에서 Map 2개를 동일한 값이 들었는지 확인하려면 map == map1 비교를 하면 True, False 값이 리턴된다.
하지만 자바에서는 다른 방법을 사용해야한다.
Map에 특정 원소들이 모두 있는지 containsAll 메서드로 확인해보자. entrySet, keySet등 사용하면 된다.
HashMap<String, Integer> mapA = new HashMap<>();
HashMap<String, Integer> mapB = new HashMap<>();
mapA.put("apple", 1);
mapA.put("banana", 3);
mapA.put("pork", 4);
mapB.put("apple", 1);
mapB.put("banana", 3);
mapB.put("pork", 4);
System.out.println(mapA.entrySet().containsAll(mapB.entrySet())); // -> true
mapB.put("chicken", 10);
System.out.println(mapA.entrySet().containsAll(mapB.entrySet())); // -> false
System.out.println(mapB.entrySet().containsAll(mapA.entrySet())); // -> true
비교할 때 기준이 되는 값이 중요!
아래 문제가 맵끼리 비교하는 연산이 필요하다.