Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 정보처리기사 실기
- 오블완
- IntelliJ
- 티스토리챌린지
- kotlin spring
- kotlin
- 기록으로 실력을 쌓자
- 정보처리기사실기 기출문제
- Kubernetes
- CKA 기출문제
- Pinpoint
- APM
- aws
- PETERICA
- kotlin coroutine
- Spring
- CloudWatch
- AI
- mysql 튜닝
- minikube
- 코틀린 코루틴의 정석
- 공부
- Java
- MySQL
- CKA
- Linux
- 정보처리기사 실기 기출문제
- Elasticsearch
- kotlin querydsl
- AWS EKS
Archives
- Today
- Total
피터의 개발이야기
[JAVA] HashMap, LinkedHashMap 차이점 및 사용법 본문
반응형
HashMap은 개발의 편의성을 위해 자주 사용한다.
MSA로 구성된 서비스에서 더더욱 그러하다.
사용자 정보를 조회하고 다른 서버와 통신하여 구매정보를 구해온다.
키값으로 구매정보 리스트를 HashMap에 저장하여
사용자정보 기준으로 정보를 쉽게 조합할 수 있다.
1. 객채 선언
HashMap map = new HashMap();
2. 데이터생성
map.put(10, "apple");
map.put(20, "orange");
map.put(30, "banana");
map.put(40, "watermelon");
map.put(50, "dragonfruit");
3. 데이터 조회
String carName = (String)map.get(10);
4. 데이터 삭제
map.remove(20);
5. 키의 존재여부
if(map.containsKey(10)){
System.out.println("있어");
}else{
System.out.println("없어!");
}
데이터를 검색할 때에
리스트는 순차적으로 자료를 찾을 수 있지만
HashMap은 키값으로 정보를 바로 찾을 수 있다.
한편, 리스트는 정보의 순서가 보장되어 있다.
하지만, 맴은 등록된 순서를 보장 받을 수 없다.
map.forEach((key, value)
-> System.out.println("key: " + key + ", value: " + value));
key: 50, value: dragonfruit
key: 20, value: orange
key: 40, value: watermelon
key: 10, value: apple
key: 30, value: banana
리스트의 장점과 맵의 장점을 합쳐진 것이 LinkedHashMap이다.
LinkedHashMap map = new LinkedHashMap();
map.put(10, "apple");
map.put(20, "orange");
map.put(30, "banana");
map.put(40, "watermelon");
map.put(50, "dragonfruit");
map.forEach((key, value)
-> System.out.println("key: " + key + ", value: " + value));
key: 10, value: apple
key: 20, value: orange
key: 30, value: banana
key: 40, value: watermelon
key: 50, value: dragonfruit
LinkedHashMap은 입력받은 순서가 보장되며, 사용방법은 HashMap과 동일하다.
반응형
'Programming > JAVA' 카테고리의 다른 글
[JAVA] 양방향 암호화기법 AES_ENCRYPT, AES_DECRPYT (0) | 2021.01.02 |
---|---|
[JAVA] JAVA 연습문제 풀어볼 수 있는 곳 (0) | 2020.12.19 |
[JAVA] Tomcat OutOfMemory시 톰캣 자동 재시작 (0) | 2020.12.17 |
[JAVA] 이전달 1일 전의 날짜인 경우 Exception 처리(Calendar) (0) | 2020.12.03 |
[JAVA] Stream allMatch(), anyMatch(), noneMatch() (0) | 2020.12.01 |
Comments