WorkHard/코딩테스트

[코딩테스트] addOddValues

코딩공대 2022. 11. 30. 09:46
728x90
문제)
<Character, Integer>타입을 요소로 가지는 HashMap을 입력받아 짝수 값(Value) 끼리 모두 더한 값을 리턴해야 합니다.

입력)
인자1 : hashMap
 - <Character, Integer>타입을 요소호 가지는 HashMap

출력)
 - int 타입의 짝수 Value들의 총합을 리턴해야 합니다.

내가 쓴 코드

  • (1)에서 Set 메서드로 Entry객체를 요소로 갖는 Set을 생성한다.
  • (2)에서 Iterator로 entrySet을 순회하며 value값을 읽어 온다.
  • (3)에서 짝수 값을 더할 sum을 정의 해준다.
  • (4)에서 Iterator를 작동시킨다. 이 때, i값이 Integer값만 받아야 하므로
  • (5)에서 getValue를 이용해 i값의 value를 velue로 받았다.(value로 써야했는데 오타나서 velue로 했지만 상관없는 오타라 넘어갔당!)
  • (6)에서 짝수 값을 추출하는 메서드로 짝수 값만을 더한다.

reference코드

  • 향상된 for을 이용하여 풀이하였다. 

다른 풀이 방법

  • value를 이용해 풀이하였다.
  • Collection을 이용해 hashMap에서 values에 Integer값을 받았고
  • 그 values값을 Interator를 이용해 순회한다.
  • 그 후로는 같다!