Java의 GetOrDefault 함수, 넌 뭐니?

Halo·2025년 6월 21일
0

Algorithm

목록 보기
64/85
post-thumbnail

🌁 배경

프로그래머스 해쉬맵 프로그래머스 의상 문제를 풀다가 해당 자료구조를 초기화 할 때, 매번 contains 함수로 확인하려니 코드가 가독성이 떨어지고 지저분하여 이를 해결할 방법을 찾게되다가 해당 GetOrDefault()함수를 알게되었다.


📝 설명

  • GetOrDefault(HashMap의 key, key가 존재하지 않을 시 return 값)

기본형은 위와 같고 어원은 아래와 같다.

  • Get : 얻다, 무엇을 얻는 것일까? 바로 첫 번째 파라미터로 입력한 key와 쌍인 HashMap에서의 value를 얻는 것이다.
  • Default : 기본, 만약 해당 key가 HashMap에 존재하지 않다면 두번째 파라미터인 key가 HashMap에 존재하지 않을 시 반환한다는 의미이다. 즉, 특정 Default값을 정의해놓고 만약 해쉬맵에 없다면 이 값을 내놓는다는 것이다.

즉, 해쉬맵에 원하는 키가 있다면 그 키의 Value를 반환하고 없다면 개발자가 두번째 파라미터로 정의한 Default값을 내놓는 함수이다.


👏 예시


 int[] numbers = {1, 2, 1, 3, 2, 1};  // 예시 배열
HashMap<Integer, Integer> countMap = new HashMap<>();

for (int num : numbers) {
    countMap.put(num, countMap.getOrDefault(num, 0) + 1);
}
System.out.println(countMap);



'''//출력
{1=3, 2=2, 3=1}	


profile
새끼 고양이 키우고 싶다

0개의 댓글