위와 같이 <타입변수>를 사용하면 형변환을 따로 해줄 필요가 없다.
HashMap<String, Student> map = new HashMap<String, Student>(); // 생성
map.put("자바", new Student("자바", 1,1,100)); // 데이터 저장
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) { }
. . .
}
public class HashMap<String, Student> extends AbstractMap<String, Student>{
. . .
public Student get(Object key) { }
public Student put(String key, Student value) { }
public Student remove(Object key) { }
. . .
}
Iterator와 HashMap을 사용할 때 지네릭스를 활용하면 타입 안정성과 형변환을 생략할 수 있다는 장점을 볼 수 있다.