import java.util.HashMap;
public class HashMapExample {
public static void main(String[] args) {
// HashMap 생성
HashMap<String, Integer> hashMap = new HashMap<>();
// 데이터 추가
hashMap.put("apple", 5);
hashMap.put("banana", 3);
hashMap.put("orange", 7);
// 데이터 조회
System.out.println("Number of apples: " + hashMap.get("apple"));
System.out.println("Number of bananas: " + hashMap.get("banana"));
System.out.println("Number of oranges: " + hashMap.get("orange"));
// 존재하지 않는 키 조회
System.out.println("Number of grapes: " + hashMap.get("grape")); // 출력: null
// 기본값을 사용하여 존재하지 않는 키 조회
System.out.println("Number of grapes: " + hashMap.getOrDefault("grape", 0)); // 출력: 0
}
}
이 코드에서는 HashMap을 생성하고 put 메서드를 사용하여 데이터를 추가합니다. 그리고 get 메서드를 사용하여 특정 키에 대한 값을 조회합니다. 또한 존재하지 않는 키를 조회할 때 getOrDefault 메서드를 사용하여 기본값을 반환하는 방법도 있다.
필요에 따라 데이터 유형과 키, 값의 데이터 유형을 수정하여 코드를 사용자 정의할 수 있다.
import java.util.HashMap;
import java.util.Map;
public class MapExample {
public static void main(Stringp[] args) {
Map<String, Integer> userPoints = new HashMAp<>();
// 데이터 추가
userPoints.put("Ogi", 100);
userPoints.put("Min", 150);
// 사용자의 포인트 조회
String userName = "Minsu";
int points = userPoints.getOrDefault(userName, 0);
System.out.println(userName + "'s points: " + points);
// 출력: Minsu's points: 0
}
맵에 특정 키가 있는 지 검사하고, 키가 없을 경우에 기본값을 사용하여 안전하게 데이터를 가져올 때 유용하다. 위의 예시에서 'userName'이라는 키가 맵에 존재하지 않을 때, 'getOrDefault' 메서드는 기본값인 0을 반환하여 에러를 방지한다. 이와 같은 상황에서 코드의 안정성을 높일 수 있는 유용한 메서드이다!
boolean containsMin = userPoints.containsKey("Min");
if (containsMin) {
// Min의 데이터가 맵에 존재함
} else {
// Min의 데이터가 맵에 존재하지 않음
}
특정 키가 맵 안에 있는지 확인하여 'true' 또는 'false' 값을 반환한다. containsKey는 '값을 가져오는 것'이 아니라 단순히 키의 '존재 여부'를 확인하는데 사용한다!
따라서, containsKey
는 단순히 특정 키의 존재 여부를 확인하고자 할 때 사용하며, getOrDefault
는 특정 키의 값을 가져오면서 해당 키가 존재하지 않을 경우에 기본 값을 반환하고자 할 때 사용한다!!!