▶ 뭉충닷컴
 
mungchung.com login
Site Search
My Space
주절주절...
공부방
쥔장소개
Board
자유게시판
유용한 정보
자료실
Programming
강좌 & Articles
Spring 3.0
프로그래밍 Tip
   -ASP
   -PHP
   -JavaScript
   -HTML
   -Java/JSP
   -Database
   -Crystal Report
   -Visual Basic
   -이클립스
   -리눅스
   -기타
Windows API (VB)
Spread Sheet 7.0
컴퓨터활용 Tip
Other things
StarCraft 전략
StarCraft 문서
김용(金庸)
Son Q & Dieda

HashMap, TreeMap, Hashtable 사용법 정리

JAVA 조회 수 29660 추천 수 0 2008.01.29 11:41:17
이 횽아가 귀찮음 무릅쓰고 정리했다.
특히 TreeMap는 value에 의해 값 정렬 가능하도록 함!

(첨부파일 다운 받아서 확인)

<!--WEBS-->
<%
/*

java HashMap 사용법
    
    1. Map interface를 implements 한 클래스로 중복 허용 안함
    2. key, value 쌍으로 이루어지며 null 허용
    3. 가장 처음 넣은 데이터가 index 0 (FIFO)

*/
java.util.HashMap hashmap = new java.util.HashMap();

hashmap.put("a","2");
hashmap.put("c","3");
hashmap.put("b","1");

out.println ("hash map size : " + hashmap.size() + "<hr>");


// hash map 값 가져오기 (방법1)
java.util.Set keyset = hashmap.keySet();
Object[] hashkeys = keyset.toArray();

for(int i=0; i<hashkeys.length; i++) {
    String key = (String)hashkeys[i];
    out.println(key + " - " + hashmap.get(key));
    out.println("<br>");
}

out.println("<hr>");

// hash map 값 가져오기 (방법1)
java.util.Iterator itr = hashmap.keySet().iterator();
while (itr.hasNext()) {
    String key = (String)itr.next();
    out.println(key + " - " + hashmap.get(key));
    out.println("<br>");
}
%>
<!--WEBE-->
실행 결과
a - 2
c - 3
b - 1

<!--WEBS-->
<%
/*

java TreeMap 사용법
    
    1. Map interface를 implements 한 클래스로 중복 허용 안함
    2. SortedMap을 implements 하여 key 값에 대한 정렬
    3. key값에 의해서 자동 정렬 됨

*/


java.util.TreeMap treemap = new java.util.TreeMap();


treemap.put("a","2");
treemap.put("c","3");
treemap.put("b","1");

// treemap size
out.println ("tree map size : " + treemap.size() + "<hr>");

// tree map 값 가져오기 (방법1)
Object[] hashkeys = (treemap.keySet()).toArray();

for(int i=0; i<treemap.size(); i++) {
    String key = (String)hashkeys[i];
    out.println(key + " - " + treemap.get(key));
    out.println("<br>");
}

out.println("<hr>");

// tree map 값 가져오기 (방법2)
java.util.Iterator itr = treemap.keySet().iterator();
while (itr.hasNext()) {
    String key = (String)itr.next();
    out.println(key + " - " + treemap.get(key));
    out.println("<br>");
}

out.println("<hr>");

// tree map 값 가져오기 - value 값 정렬로 해서가져오기
java.util.TreeSet set = new java.util.TreeSet(new java.util.Comparator() {
    public int compare(Object obj, Object obj1) {
        return ((Comparable) ((java.util.Map.Entry) obj).getValue()).compareTo(((java.util.Map.Entry) obj1).getValue());
    }
});

set.addAll(treemap.entrySet());
for (java.util.Iterator i = set.iterator(); i.hasNext();) {
    java.util.Map.Entry entry = (java.util.Map.Entry) i.next();
    out.println(entry.getKey() + " - " + entry.getValue());
    out.println("<br>");
}
%>
<!--WEBE-->
실행 결과
a - 2
b - 1
c - 3
--------------------------------------------------------------------------------
b - 1
a - 2
c - 3


<!--WEBS-->
<%
/*

java HashTable 사용법
    
    1. Map interface를 implements 한 클래스로 중복 허용 안함
    2. key, value 쌍으로 이루어지며 null 허용 안함
    3. 가장 마지막에 넣은 데이터가 index 0 (FILO)

*/
java.util.Hashtable hashtable = new java.util.Hashtable();

hashtable.put("a","2");
hashtable.put("c","3");
hashtable.put("b","1");

out.println ("hash table size : " + hashtable.size() + "<hr>");


// hash table 값 가져오기 (방법1)
java.util.Set keyset = hashtable.keySet();
Object[] hashkeys = keyset.toArray();

for(int i=0; i<hashkeys.length; i++) {
    String key = (String)hashkeys[i];
    out.println(key + " - " + hashtable.get(key));
    out.println("<br>");
}

out.println("<hr>");

// hash table 값 가져오기 (방법1)
java.util.Iterator itr = hashtable.keySet().iterator();
while (itr.hasNext()) {
    String key = (String)itr.next();
    out.println(key + " - " + hashtable.get(key));
    out.println("<br>");
}
%>
<!--WEBE-->
실행 결과
b - 1
a - 2
c - 3
문서 첨부 제한 : 0Byte/ 2.00MB
파일 크기 제한 : 2.00MB (허용 확장자 : *.*)
List of Articles
번호 제목 글쓴이 날짜 조회 수
15 JAVA 이클립스에 톰캣서버 연동하기 file 뭉충닷컴 2008-03-21 10426
14 JAVA while문 이용하여 텍스트파일에 쓰여진 글 읽기 뭉충닷컴 2008-02-26 9476
13 JAVA 오늘 날짜 구하기 뭉충닷컴 2008-02-22 11268
12 JAVA Java 형변환 정리 뭉충닷컴 2008-02-06 13414
» JAVA HashMap, TreeMap, Hashtable 사용법 정리 file 뭉충닷컴 2008-01-29 29660
10 JAVA value 값이 Ljava.lang.String 형일 때 실제 값 보기 뭉충닷컴 2008-01-29 10903
9 JAVA 톰캣(tomcat) 4.x 버젼에서 한글/UTF-8 사용하기 file 뭉충닷컴 2008-01-28 8486
8 JAVA RMI, IIOP에 대한 설명 뭉충닷컴 2008-01-22 6871
7 JAVA 자바의 직렬화(Serializable) 설명 뭉충닷컴 2008-01-18 7013
6 JAVA BLOB으로 저장된 사진정보 파일로 받기 이영진 2007-08-31 14790
5 JAVA classes12와 ojdbc14의 CLOB 처리 비교 이영진 2007-08-30 13757
4 JAVA classes12와 ojdbc14 connection 선언시 차이 [1] 이영진 2007-08-30 9054
3 JAVA java, infix를 postfix로 만들기 file 뭉충닷컴 2007-04-05 11919
2 JAVA "==" 과 "equals()" 의 차이점 뭉충닷컴 2003-11-04 6817
1 JAVA split와 StringTokenizer 비교 뭉충닷컴 2003-11-04 9492