Hash Map의 사용법 정리
예시: 축구선수 1경기의 스탯을 저장하는 해쉬맵.
슛팅수:0
골수:0
프리킥:0
페널티킥:0
킥정확도:0
유효슛팅:0
이런식으로 각 명칭과 숫자가 있고 킥정확도의 경우 시시각각 변하며, 유효슛팅도 숫자가 늘었다가 이후 줄어들 수 도 있다.
선언
HashMap<String, Integer> hm = new HashMap<>();
문자-숫자키 의 쌍으로 된 해쉬맵을 저장하려면 위와 같이한다.
예를들어 슛팅:1
골포스트:5
이런식으로 숫자를 넣을때 선언을 위와같이한다.
값 넣기
//초기에 슛팅 0으로 시작할땐
hm.put("슛팅",0);
//또는 슛을 할때마다 추가하려면
hm.put("슛팅", hm.getOrDefualt("슛팅",0)+1); //슛팅의 숫자를 가져오는데 없을경우 기본값 0으로 하고 +1을한다.
해쉬맵 출력하기 (EntrySet, KeySet)
for(String key: hm.keySet()){
if (hm.get(key) == 1){
answer = key;
}
}
hm.get(key) 를하면 키를 넣으면 값을 꺼내준다.
EntrySet 은 Key, Value를 보여주는것.
키를가지고 있는지 확인하는 containsKey 함수
for(String key : hm.keySet()){
for(int i=1; i<key.length(); i++){
if(hm.containsKey(key.substring(0,i))){
return false;
}
}
}
"33"이라는 키를 가지고있는지 보려면 hm.containsKey("33") 을넣으면 True 또는 False를 리턴한다.
'ETC > Java 알고리즘' 카테고리의 다른 글
프로그래머스 - 문자열 여러 번 뒤집기 [JAVA] 문제 풀이 및 해설 (0) | 2023.10.29 |
---|---|
프로그래머스[JAVA] - 소수 찾기 (0) | 2021.09.27 |
Java 코딩테스트 준비 ⓸- 자료구조 Queue 큐 (0) | 2021.09.21 |
Java 코딩테스트 준비 ⓶-자료구조 기초 (0) | 2021.09.19 |
Java 코딩테스트 준비 ⓵-기초 셋팅 및 기본 문법 정리 (0) | 2021.09.19 |