목차

getOrDefault() 메서드란?
Map.getOrDefault(key,deafaultValue)
메서드는 자바의 Map인터페이스에서 제공되는 메서드 중 하나이다. 역할은 지정된 키의 값을 반환하고 해당 키가 Map에 존재하지 않는다면 defaultValue를 반환하는 기능을 제공한다.
예제1
import java.util.HashMap;
import java.util.Map;
public class MapGetOrDefaultExample {
public static void main(String[] args) {
// Map 생성
Map<String, Integer> ageMap = new HashMap<>();
// 값 추가
ageMap.put("Alice", 25);
ageMap.put("Bob", 30);
// getOrDefault() 메서드를 사용하여 키 "Alice"의 값을 가져옴
int aliceAge = ageMap.getOrDefault("Alice", 0);
System.out.println("Alice의 나이: " + aliceAge); // Alice의 나이: 25
// getOrDefault() 메서드를 사용하여 키 "Charlie"의 값을 가져옴
int charlieAge = ageMap.getOrDefault("Charlie", 0);
System.out.println("Charlie의 나이: " + charlieAge); // Charlie의 나이: 0
// 기본값을 변경하여 getOrDefault() 메서드 사용
int daveAge = ageMap.getOrDefault("Dave", 40);
System.out.println("Dave의 나이: " + daveAge); // Dave의 나이: 40
}
}
예제2
import java.util.HashMap;
import java.util.Map;
public class MapGetOrDefaultExample {
public static void main(String[] args) {
// Map 생성
Map<String, String> colorMap = new HashMap<>();
// 값 추가
colorMap.put("Apple", "Red");
colorMap.put("Banana", "Yellow");
// getOrDefault() 메서드를 사용하여 키 "Apple"의 값을 가져옴
String appleColor = colorMap.getOrDefault("Apple", "Unknown");
System.out.println("Apple의 색상: " + appleColor); // Apple의 색상: Red
// getOrDefault() 메서드를 사용하여 키 "Grapes"의 값을 가져옴
String grapesColor = colorMap.getOrDefault("Grapes", "Purple");
System.out.println("Grapes의 색상: " + grapesColor); // Grapes의 색상: Purple
// 기본값을 변경하여 getOrDefault() 메서드 사용
String orangeColor = colorMap.getOrDefault("Orange", "Orange");
System.out.println("Orange의 색상: " + orangeColor); // Orange의 색상: Orange
}
}
정리
👉
getOrDefault()를 이용해서 map의 값을 가져오고 없을시 dafaultValue를 반환함으로써 특정 키의 값이 존재하면 가져오고, 없는경우에는 예외처리를 동시에 진행해서 안전하게 값을 불러올 수 있다.