Map
키-값의 쌍을 저장하는 자료 구조
>> 키는 중복될 수 없지만 값은 중복 가능
>> Map은 순서를 유지하지 않음
Entry Key-Value Pair
>> Entry는 키-값의 쌍으로 이루어진 간단한 객체, Map 내부에서 키와 값을 함께 묶어서 저장할 때 사용
키 목록 조회
Set<String> keySet = studentMap.keySet()
>> Map의 키는 중복 허용 x
>> Map의 모든 키 목록을 조회하는 keySet() 호출하면 중복 허용하지 않는 자료 구조인 Set 반환
값 목록 조회
Collection<Integer> values = studentMap.values()
>> Map의 값은 중복 허용, Set으로 반환 불가
>> 입력 순서 보장 x, List로 반환하기 애매
>> 단순히 값의 모음이라는 의미의 상위 인터페이스 Collection으로 반환
자바 HashMap 작동원리
HashSet과 작동 원리가 같음
>> 차이로는 Key를 사용해서 해시 코드 생성
>> Key 뿐 아니라 값(Value)를 추가로 저장해야해서 Entry 사용
해시를 사용해서 키와 값을 저장하는 자료구조를 일반적으로 해시 테이블
Map의 Key로 사용되는 객체는 hashCode(), equals() 반드시 구현
Stack
후입선출(Last In First Out)
>> 가장 마지막에 넣은 3번이 가장 먼저 나옴
스택에 값을 넣는 것을 push, 값을 꺼내는 것을 pop
Queue
선입선출(First In First Out)
>> 가장 먼저 넣은 것이 가장 먼저 나오는 것
큐에 값을 넣는 것을 offer, 꺼내는 것을 poll
Deque(Double Ended Queue)
양쪽 끝에서 요소를 추가하거나 제거 가능
일반적인 큐와 스택의 기능을 모두 포함
'Java' 카테고리의 다른 글
Java / 컬렉션 프레임워크 - 순회, 정렬 (0) | 2025.03.11 |
---|---|
Java / 컬렉션 프레임워크 - Set (0) | 2025.03.08 |
Java / 컬렉션 프레임워크 - HashSet (0) | 2025.03.08 |
Java / 컬렉션 프레임워크 - Hash (0) | 2025.03.08 |
Java / 컬렉션 프레임워크 - List (0) | 2025.03.07 |