????HashMap??put????????????
????1???????key????hashCode()??????????л??????key??????????int????????key??????????????int????????int?????hash??????hash???
????2?????hash????Entry??????±??????????±????????????????????????????????key??hash???б????????????????????????
????3???????????????addentry()????????????????????±??У???????????key??hash???
????????仰????????????????key??hash????????????±?????????±???????????????????????б???????????????????put?????
??????????????Map?е?key???????????? ????Map??put???????????????????????
?????????????key?1??value?"zhangSan"??????hash?????101????????101?????????±????hash=101??key=1??value="zhangSan"????????????????????????101?±???????????key??????????hash???????????HashMap??????????
????get??
public V get(Object key)  {
if (key == null)
return getForNullKey();
int hash = hash(key.hashCode());
for (Entry<</SPAN>K??V> e = table[indexFor(hash?? table.length)];
e != null;
e= e.next)  {
Object k;
if (e.hash == hash && ((k = e.key) == key || key.equals(k)))
return e.value;
}
return null;
}
??????????key??????????????????key?????hash?????????????hash?????±????????????????????????value????
???????????????ж???????????????????????
??????????????????????????????????????????????????????????????????????????????????????????