package com.zhushen.map;
import java.util.LinkedList;
public class MyHashMap {
class Entry {
Object key;
Object value;
public Entry(Object key, Object value) {
super();
this.key = key;
this.value = value;
}
}
@SuppressWarnings("unchecked")
LinkedList<Object> arr[] = new LinkedList[999];
int size;
public void put(Object key,Object value){
Entry e=new Entry(key, value);
int hash=key.hashCode();
hash=hash<0?-hash:hash;
int temp=key.hashCode()%999;
if(arr[temp]==null){
LinkedList<Object> list=new LinkedList<Object>();
arr[temp]=list;
list.add(e);
}else{
for(int i=0;i<arr[temp].size();i++){
Entry e2=(Entry) arr[temp].get(i);
if(e2.key.equals(key)){
e2.value=value;
}
}
arr[temp].add(e);
}
}
public Object get(Object key){
int temp=key.hashCode()%999;
if(arr[temp]!=null){
for(int i=0;i<arr[temp].size();i++){
Entry e=(Entry) arr[temp].get(i);
if(e.key.equals(key)){
return e.value;
}
}
}
return null;
}
public static void main(String[] args) {
MyHashMap m = new MyHashMap();
m.put("高琪", new Wife("杨幂"));
m.put("高琪", new Wife("李四"));
Wife w = (Wife) m.get("高琪");
System.out.println(w.name);
}
}