Java 컬렉션 프레임 워크 - Map (1)
목차
[Programmer/JAVA] - Java 자바 - LinkedHashSet을 이용하여 Bingo게임 만들기
[Programmer/JAVA & C언어 예제] - 자바(Java) - HashSet 을 이용해 로또 프로그램 만들기
[Programmer/JAVA & C언어 예제] - 자바 - Java 컬렉션 : HashSet 예제 풀이
[Programmer/JAVA] - JAVA - 컬렉션 : TreeSet (트리구조)
[Programmer/JAVA] - JAVA 자바 - 컬렉션 : Set
[Programmer/JAVA] - JAVA 자바 - 컬렉션 : Vector
[Programmer/JAVA] - 자바 - 컬렉션 프레임워크 - List 계열
1) 개요
- Map 컬렉션은 Key와 Value으로 구성된 Entry객체를 저장하는 구조를 가지고 있다.
- 여기서 키와 값은 모두 객체이다.
- 키는 중복 저장될 수 없지만 값은 중복 저장 될 수 있다.
- 만약에 기존에 저장된 키와 동일한 키로 저장하면 기존의 값은 없어지고 새로운 값으로 대치된다.
2) 구조

3) 구현 클래스 : HashMap, HashTable, LinkedHashMap, Properties, TreeMap
4 ) 주요 메소드

- 메소드의 매개변수 타입과 리턴 타입에 K와 V라는 타입 파라미터가 잇는데, 이는 제네릭 타입을 말한다.
- K : key , V : value
- 구현 객체에서 구체적인 타입을 지정하면 된다 .
활용
객체 추가 - put();
키로 객체를 찾아올 때 - get()
객체 삭제는 remove()
// 사용 예
Map<String, Integer> map = ~~;
map.put("홍길동", 30);
int score = map.get("홍길동");
map.remove("홍길동");
객체를 찾아오기
방법1 ) 키(key)를 알고 있어서 바로 결과를 얻을 경우
get(key) === > 예시) get("홍길동");
방법2 ) 저장된 전체 객체를 대상으로 하나씩 얻고 싶을 경우 2가지 방법으로 찾는다.
- (1) keySet()메소드로 모든 키를 set컬렉션을 얻은 다음 -> 반복자(Iterator)를 통해 키를 하나씩 얻고, get()메소드를 통해 값 얻기
Map<Key, Value> map = ~~;
Set<Key> keySet = map.ketSet();
Iterator<Key> keyIterator = keySet.iterator();
while(keyIterator.hasNext()){
Key k = keyIterator.next();
Value v = map.get(key);
}
- (2) entrySet() 메소드로 모든 Map.Entry를 Set컬렉션으로 얻은 다음 -> 반복자를 통해 Map.Entry를 Set컬렉션으로 얻은 다음
-> 반복자를 통해 Map.Entry를 하나씩 얻고
-> getKey()와 getValue()메소드를 이용해서 키와 값을 얻으면 된다.
Set<Map.Entry<K,V> entrySet = map.entrySet();
Iterator<Map.Entry<K,V>> entryIter = entrySet.iterator();
while(entryIter.hasNext()){
Map.Entry<K, V> entry = entryIter.next();
K key = entry.getKey();
V value = entry.getValue();
}
'⚙️ Backend > JAVA' 카테고리의 다른 글
JAVA (자바) - 람다식 기본 문법(2) (0) | 2020.12.14 |
---|---|
JAVA(자바) - 람다식이란? (0) | 2020.12.14 |
Java 자바 - LinkedHashSet을 이용하여 Bingo게임 만들기 (0) | 2020.12.09 |
JAVA - 컬렉션 : TreeSet (트리구조) (0) | 2020.12.09 |
JAVA 자바 - 컬렉션 : Set (0) | 2020.12.09 |
댓글