[Java/자바] map - getOrDefault의 활용

반응형
getOrDefault(Object key, V DefaultValue)

찾는 key가 존재한다면 찾는 key의 value값을 반환하고, 없다면 DefaultValue를 반환합니다.

key map의 key 요소
DefaultValue 지정된 키로 매핑된 값이 없는 경우 반환할 기본 값

 

예시 코드
import java.util.HashMap;
import java.util.Map;

public class test {
	public static void main(String arg[]) {
    
        String [] abc = { "A", "B", "C" ,"A", "B"}; 
        Map<String, Integer> map = new HashMap<>(); 
        
        for(String key : abc) {
        	hm.put(key, hm.getOrDefault(key, 0) + 1); 
        }
    } 
}

// 출력 결과 : {A=2, B=2, C=1}

이 예제를 보면 동일 키 값이 있을 경우 기존 value값에 +1을 덮어써서 동일한 키의 값은 2가 출력된 것을 볼 수 있습니다.

즉, getOrDefaut메서드는 기존 key값의 value를 계속 사용하고 싶을 경우 사용할 수 있습니다.