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
- 코딩문제
- wil
- 자료구조
- 개발자 취업
- GIT
- Til
- 면접(java
- 자바
- 배열
- css
- 코딩
- 이진 탐색(binary search)
- HTML
- Entity
- 항해99
- github
- Spring
- cs 공부)준비
- aop
- Grafana
- 프로그래머스
- 정렬 알고리즘(sort algorithm)
- 회고
- ArrayList
- 메서드
- CS
- 코딩공부
- 99클럽
- Java
- 코딩테스트 준비
Archives
- Today
- Total
hayu's 개발 일지
[TIL]240403 Map 본문
Map 이란?
// map 생성
Map<타입1, 타입2> map이름 = new HashMap<타입1, 타입2>();
Map<String, String> map = new HashMap<String, String>();
- Map은 Key 와 Value 한쌍으로 이루어진 인터페이스다.
- Map은 리스트나 배열처럼 순차적으로 해당 요소 값을 구하지 않고 Key를 통해 Value를 얻는다.
- 값(Value)은 중복될 수 있지만, Key는 고유한 값(Unique)을 가져야 한다.
Map의 특징
- Map은 저장 순서를 유지하지 않는다.
- Key를 통해 Value를 얻어내기 때문에 Key는 중복을 허용하지 않는다. (Value는 중복을 허용한다.)
- 이미 존재하는 Key값과 동일한 Key값을 넣으면 새로운 Key값으로 갱신된다.
Map 생성 예시
// map 생성 <String, String>
Map<String, String> map1 = new HashMap<String, String>();
map1.put("학생1", "김씨");
map1.put("학생2", "강씨");
// map 생성 <String, Integer>
Map<String, Integer> map2 = new HashMap<String, Integer>();
map2.put("학생1", 1);
map2.put("학생2", 2);
// map 생성 <String, List<String>>
Map<String, List<String>> map3 = new HashMap<String, List<String>>();
List<String> list = new ArrayList<String>();
list.add("one");
list.add("two");
list.add("three");
HashMap
- Map 인터페이스를 구현한 대표적인 클래스이다.
- 해시 함수를 통해 키와 값이 저장되는 위치를 결정한다.
- → 사용자는 그 위치를 알 수 없고, 삽입되는 순서와 위치 또한 관계가 없다.
- 많은 양의 데이터를 검색하는 부분에서 뛰어난 성능을 보인다.
Map 메서드
- put(Object key, Object value) : 주어진 키로 값을 저장한다. 해당 키가 새로운 키일 경우 null을 리턴하지만, 동일한 키가 있을 경우에는 기존의 값을 대체하고 이전의 값을 반환한다.
- get(Object key) : 주어진 키에 해당하는 값을 반환한다.
- containsKey(Object key) : 주어진 키가 있으면 true, 없으면 false를 반환한다.
- containsValue(Object Value) : 주어진 값이 있으면 true, 없으면 false를 반환한다.
- remove(Object key) : 주어진 키와 일치하는 Map.Entry를 삭제하고 값을 반환한다.
- size() : 저장된 Entry 객체의 총 갯수를 반환한다.
- values() : 저장된 모든 값을 Collection에 담아서 반환한다.
- clear() : 모든 Map.Entry을 삭제한다.
참고 자료
- https://pongic.tistory.com/16
- https://velog.io/@dongeranguk/JAVA-Map%EC%9D%B4%EB%9E%80
'기술 > java' 카테고리의 다른 글
[TIL]240408 Scanner 클래스 (1) | 2024.04.08 |
---|---|
[TIL]240406 Set (0) | 2024.04.06 |
[TIL]240325 ArrayList (0) | 2024.03.25 |
[TIL]240323 List (1) | 2024.03.23 |
[TIL]240228 클래스와 생성자(2) (0) | 2024.02.28 |