반응형
Map.getOrDefault 란?
찾는 키가 존재하면 해당 키의 value를 리턴하고 존재하지 않으면 default 설정 value값을 리턴한다.
getOrDefault 사용하기
map.getOrDefault(Object key, V defaultValue);
- key : map 내부에 해당 key 값이 존재하면 그 key의 value 리턴
- key 값으로 탐색하였지만 해당 key 값이 존재하지 않으면 defaultValue 리턴
getOrDefault 를 사용한 예제
ex. 한 페이지에 방문한 user들이 String 배열에 담겨져있고 페이지에 방문한 횟수를 구하기 위한 예제입니다.
import java.util.HashMap;
public class MapGetOrDefaultEx {
public static void main(String[] args) {
String[] userVisit = {"A101", "B302", "B302", "C999", "D888", "A101", "B302"};
HashMap<String, Integer> userVisitCnt = new HashMap<>();
for(String user : userVisit){
userVisitCnt.put(user, userVisitCnt.getOrDefault(user, 0)+1);
}
System.out.println(userVisitCnt);
}
}
- getOrDefault(user, 0)+1 를 통해서 user가 map에 존재하지 않으면 1회를 저장하고 존재하면 저장되어있는 방문횟수에 1을 더한 값을 저장해줍니다.
- 결과값 :
반응형
'language > java' 카테고리의 다른 글
[Java] Reflection을 이용하여 invoke() 로 메소드 동적호출 (0) | 2023.06.11 |
---|---|
[Java] System.arraycopy 와 Array.copyOfRange (0) | 2023.06.06 |
[Java] BiFunction 인터페이스 (0) | 2023.05.28 |
[JAVA/자바] 문자열 인코딩 변환 - String getBytes() (0) | 2022.12.15 |
[Java] Long 자료형을 Integer로 형변환 : java.lang.Long cannot be cast to class java.lang.Integer (0) | 2022.05.27 |