[TIL][Java][2023-12-07] 컬렉션 - Map
2023. 12. 7. 21:02ㆍTIL/Java
Map
Map은 key - value 구조로 구성된 데이터를 저장할 수 있다.
- 특징
- key - value 형태로 데이터를 저장하기 때문에 기존에 순번으로만 조회하던 방식에서
key 값을 기준으로 value를 조회할 수 있다. - key 값 중복을 허용하지 않는 기능을 가지고 있다.
- Map은 그냥 Map으로 쓸 수도 있지만 HashMap, TreeMap등으로 응용하여 사용할 수 있다.
- key - value 형태로 데이터를 저장하기 때문에 기존에 순번으로만 조회하던 방식에서
- 기능
- 선언 : Map<String, Integer> intMap 형태로 Key값과 Value타입을 지정해서 선언한다.
- 생성 : new HashMap<>(); 의 형태로 생성한다.
- 추가 : intMap.put(추가할 key값, 추가할 value값) 형태로 Key에 Value값을 추가한다.
- 조회 : intMap.get(조회할 key값) 형태로 Key에 있는 Value값을 조회한다.
- 전체 key 조회 : intMap.keySet() 형태로 전체 Key값들을 조회한다.
- 전체 value 조회 : intMap.values() 형태로 전체 Value값들을 조회한다.
- 삭제 : intMap.remove(삭제할 key값) 형태로 Key에 있는 Value값을 삭제한다.
- HashMap : 중복을 허용하지 않고 순서를 보장하지 않음, 키와 값으로 null이 혀용된다.
- TreeMap : key값을 기준으로 정렬을 할 수 있다. 다만, 저장시 정렬(오름차순)을 하기 때문에
저장시간이 다소 오래 걸린다.
// Map
// (사용하기 위해선 import java.util.Map; 를 추가해야한다.)
import java.util.Map;
public class Main {
public static void main(String[] args) {
Map<String, Integer> intMap = new HashMap<>(); // 선언 및 생성
// 키 , 값
intMap.put("일", 11);
intMap.put("이", 12);
intMap.put("삼", 13);
intMap.put("삼", 14); // 중복 Key값은 덮어쓴다.
intMap.put("삼", 15); // 중복 Key값은 덮어쓴다.
// key 값 전체 출력
for (String key : intMap.keySet()) {
System.out.println(key); // 일,이,삼 출력
}
// value 값 전체 출력
for (Integer key : intMap.values()) {
System.out.println(key); // 11,12,15 출력
}
// get()
System.out.println(intMap.get("삼")); // 15 출력
}
}
'TIL > Java' 카테고리의 다른 글
[TIL][Java][2023-12-12] 클래스 (2) | 2023.12.12 |
---|---|
[TIL][Java][2023-12-08] 객체 지향 프로그래밍 (0) | 2023.12.08 |
[TIL][Java][2023-12-06] 컬렉션 - Set (0) | 2023.12.06 |
[TIL][Java][2023-12-05] 컬렉션 - Queue (2) | 2023.12.05 |
[TIL][Java][2023-12-04] 컬렉션 List - Stack (1) | 2023.12.04 |