///////
Search

Map

날짜
2022/10/06
텍스트

Map

Map 이란?

Key - Value 의 한 쌍으로 데이터를 저장하는 인터페이스
Key 를 통해서 Value 를 얻는다.

Map 의 종류

1.
HashMap : 일반적으로 많이 사용하는 Map 자료구조
2.
HashTable : HashMap과 동일한 특징을 갖지만, Thread-Safe 하여 동기화를 지원한다.
3.
LinkedHashMap : 들어온 순서대로 순서를 갖는 Map 자료구조
4.
TreeMap : 이진트리로 구성되어 있고, TreeSet 과 같이 정렬하여 데이터를 저장한다. (오래걸림)
주로 사용하는 HashMap에 대해서 작성할게요.

Map의 기능

1. 선언 방법

HashMap<String,String> map1 = new HashMap<String,String>();//HashMap생성 HashMap<String,String> map2 = new HashMap<>();//new에서 타입 파라미터 생략가능 HashMap<String,String> map3 = new HashMap<>(map1);//map1의 모든 값을 가진 HashMap생성 HashMap<String,String> map4 = new HashMap<>(10);//초기 용량(capacity)지정 HashMap<String,String> map5 = new HashMap<>(10, 0.7f);//초기 capacity,load factor지정 HashMap<String,String> map6 = new HashMap<String,String>(){{//초기값 지정 put("a","b"); }};
Java
복사
HashMap 은 저장공간보다 값이 추가로 들어오면 저장공간을 약 두 배로 늘린다.

2. put() : 값 추가

put(key, value) 형태로 값을 추가한다.
HashMap<Integer,String> map = new HashMap<>();//new에서 타입 파라미터 생략가능 map.put(1,"사과"); //값 추가 map.put(2,"바나나"); map.put(3,"포도");
Java
복사

3. remove() : 값 삭제

key 값으로만 요소를 삭제할 수 있다.
map.remove(1); //key값 1 제거 map.clear(); //모든 값 제거
Java
복사

4. get() : 값 출력

key 값을 입력해 value 값을 얻는다.
System.out.println(map.get(1));
Java
복사
사과
Java
복사

5. entrySet() : key와 value 추출

Map<Integer, String> map = new HashMap<Integer, String>(); map.put(1, "A"); map.put(2, "B"); map.put(3, "C"); for (Entry<Integer, String> entrySet : map.entrySet()) { System.out.println(entrySet.getKey() + " : " + entrySet.getValue()); } // 결과 // 1: A // 2: B // 3: C
Java
복사