implement HashMap

 1 public class HashMap {
 2     private static final int SIZE = 16;
 3     private Entry table [] = new Entry [SIZE] ;
 4     class Entry{
 5         private final String key;
 6         String value;
 7         Entry next;
 8         Entry(String k,String v){
 9             key = k;
10             value = v;
11         }
12         public String getValue() {
13             return value;
14         }
15         public void setValue(String value) {
16             this.value = value;
17         }
18         public String getKey() {
19             return key;
20         }
21     }
22     public Entry get(String key){
23         int hash = key.hashCode()&(SIZE-1);
24         Entry e = table[hash];
25         while(e!=null){
26             if(e.getKey().equals(key)){
27                 return e;
28             }
29             e=e.next;
30         }
31         return null;
32     }
33     public void put(String key,String value){
34         int hash = key.hashCode()&(SIZE-1);
35         Entry e = table[hash];
36         if(e !=null){
37             if(e.getKey().equals(key)){
38                 e.setValue(value);
39             }
40             else{
41                 while(e.next!=null){
42                     e=e.next;
43                 }
44                 e.next = new Entry(key,value);
45             }
46         }else{
47             table[hash] = new Entry(key,value);
48         }
49     }
50 }
View Code

 

posted @ 2014-04-10 03:13  krunning  阅读(252)  评论(0编辑  收藏  举报