티스토리 뷰
package practice;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class HashMapEx2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
HashMap map = new HashMap();
map.put("김", new Integer(90));
map.put("김", new Integer(100));
map.put("이", new Integer(100));
map.put("서", new Integer(80));
map.put("정", new Integer(90));
// 해시맵 생성, 키는 중복이 될 수 없다.
Set set = map.entrySet();
//해시맵에 저장된 키와 값을 엔트리(키와 값의 결합)의
//형태로 Set에 저장해서 반환한다.
//HashMap은 Set의 자식
//이터레이터를 사용하기 위한 형변환
Iterator it = set.iterator();
// 이터레이터 생성
while (it.hasNext()) {
Map.Entry e = (Map.Entry) it.next();
System.out.println("이름 : " + e.getKey() + ", 점수 : " + e.getValue());
//이터레이터로부터 읽은 해시맵의 키와 값을 얻어와 출력한다.
//캐스팅이 필요하다.
}
set = map.keySet(); //키 셋만 반환
System.out.println("참가자 명단 : " + set);
Collection values = map.values();
//해시맵에 저장된 모든 값을 컬렉션의 형태로 반환한다.
it = values.iterator();
//값에 대한 이터레이터 생성
int total = 0;
while (it.hasNext()) {
Integer i = (Integer) it.next();
total += i.intValue();
}
System.out.println("총점 : " + total);
System.out.println("평균 : " + (float) total / set.size());
System.out.println("최고점수 : " + Collections.max(values));
}
}
'java,web study > 3주차 (7월 15일 ~21일)' 카테고리의 다른 글
HashMapEx3 - 전화번호부 (0) | 2013.07.19 |
---|---|
HashMapEx1 - 로그인 (1) | 2013.07.19 |
ComparatorEx1 - 오름차순(디폴트), 내림차순 정렬 (0) | 2013.07.19 |
TreeSetEx1 - 문자열 (0) | 2013.07.19 |
TreeSetLotto (0) | 2013.07.19 |