티스토리 뷰

언어/JAVA

[JAVA] 해쉬맵(HashMap)

Sime 2016. 9. 20. 14:37

해쉬맵(HashMap)


HashMap이란 Map인터페이스의 한종류로써 Key와 Value 값으로 데이터를 저장하는 형태

Map이란 놈은 키(Key) , 값(Value) 을 하나의 쌍으로 묶어서 저장하는 컬렉션 클래스

Map에 종류에는 Hashtable, HashMap, LinkedHashMap, SortedMap, TreeMap


주의 하실 점

map에 데이터를 등록할 때 , key값은 중복이 되지 않고 , value값은 중복이 허용


(예제 소스)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import java.util.HashMap;
import java.util.Map;
 
class Student{
    int number;
    String name;
    
    public Student(int number, String name) {
        this.number = number;
        this.name = name;
    }
    
    @Override
    public String toString() {
        // TODO Auto-generated method stub
        return name;
    }
}
 
 
 
public class Test {
    public static void main(String[] args) {
        Map<String,Student> st = new HashMap<String,Student>();
        
        st.put("20090001"new Student(20090001,"구준표"));
        st.put("20090002"new Student(20090002,"금잔디"));
        st.put("20090003"new Student(20090003,"윤지후"));
        
        System.out.println(st);
        
        st.remove("20090002");
        
        st.put("20090003",new Student(20090003"소이정"));
        
        System.out.println(st.get("20090003"));
        
        for(Map.Entry<String, Student> s : st.entrySet()){
            String key = s. getKey();
            Student value = s.getValue();
            System.out.println("key="+key+", value="+value);
        }
        
    }
}
cs

결과 : 
{20090001=구준표, 20090002=금잔디, 20090003=윤지후}
소이정
key=20090001, value=구준표
key=20090003, value=소이정



반응형

'언어 > JAVA' 카테고리의 다른 글

[JAVA] synchronized  (0) 2016.09.22
[JAVA] 스레드(Thread)  (0) 2016.09.22
[JAVA] ArrayList와 LinkedList  (0) 2016.09.20
[JAVA] 컬렉션  (0) 2016.09.20
[JAVA] 캡슐화란?  (0) 2016.09.20
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함