728x90
반응형
SMALL

위는 자주 사용되는 메소드들이다.
그중 getOrDefault 에 대해 알아보자
getOrDefault(key,0) : 찾는 키값이 존재하면 key값을 넣고 아니면 0을 넣어라
Map은 중복저장이 안되는 특성이 있기 때문에 중복 값 저장시 나중에 추가되는 값이 갱신된다는점을 생각하자!
두 배열을 participant, complention 을 비교하여 complention 에 없거나 중복되는 값을 찾아 리턴하는 예제를 보자
HashMaep.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
package programmers;
import java.util.HashMap;
public class HashMaep { // 해쉬맵의 기존의 존재하는 값을 넣어주면 새로운 값으로 대체되는 성질을 이용한 것임.
public static String solution(String[] participant, String[] completion) {
String answer = "";
HashMap<String, Integer> hm = new HashMap<>();
for (String player : participant) hm.put(player, hm.getOrDefault(player, 0) + 1);
for (String player : completion) hm.put(player, hm.get(player) - 1);
for (String key : hm.keySet()) {
if (hm.get(key) != 0){
answer = key;
}
}
return answer;
}
}
|
cs |
test.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
package programmers;
public class test {
public static void main(String[] args) {
String[] arr= {"a","b","c"};
String[] arr1= {"a","b"};
System.out.println("해시맵사용: "+HashMaep.solution(arr, arr1));
}
|
cs |

728x90
반응형
LIST