-
HashMap과 지네릭스공부/Java 2024. 4. 23. 11:25
HashMap과 지네릭스
- HashMap은 두개의 타입 변수가 필요하다.
- 여러 개의 타입 변수가 필요한 경우, 콤마(,)를 구분자로 선언하며, HashMap<K, V>로 사용한다.
※ HashMap의 지네릭스에는 키값과 밸류값이 필요하다
※ HashMap 클래스 내부
public class HashMap<K, V> extends AbstractMap<K, V> { //일부 생략 ... public V get(Object key) { /* 내용 생략*/ } public V put(K key, V value) { /* 내용 생략*/ } public V remove(Object key) { /* 내용 생략*/ } ... }
원래 타입변수 K와 V는 Object였다.
하지만 지네릭스를 활용해 타입을 지정한 것이다.
그러면 get으로 꺼낼 때 등의 상황에서 타입변수 V를 활용하기 때문에 형변환이 불필요해진다.
코드가 간결해져서 편리해진다.
해시맵을 선언할 때 JDK1.7부터 생성자에 타입지정이 생략 가능해졌다.
HashMap<String, Student> map = new HashMap<>();
※ 양 옆이 같아야만 HashMap이 사용 가능하므로 자동으로 뒤에 해당 타입 변수가 들어간다고 생각하면 편하다.
'공부 > Java' 카테고리의 다른 글
와일드 카드 (0) 2024.04.25 제한된 지네릭 클래스, 지네릭스의 제약 (0) 2024.04.24 Iterator<E> (0) 2024.04.22 지네릭스 용어, 지네릭 타입과 다형성 (0) 2024.04.20 타입 변수 (0) 2024.04.19