?本次分析代碼為JDK1.8中HashTable代碼。
??HashTable不允許null作為key和value。
??HashTable中的方法為同步的,所以HashTable是線程安全的。

Entry類

介紹

  • Entry是HashTable內的一個靜態(tài)內部類,實現(xiàn)了Map.Entry接口。table的類型就是Entry。

基本參數(shù)

  • hash:存這個Entry的hash值

  • key:存key值

  • value:存value的值

  • next:通過鏈表連接下一個Entry

final int hash;final K key;
V value;
Entry<K,V> next;

構造函數(shù)

  • 用來新建Entry,需要四個參數(shù)。

protected Entry(int hash, K key, V value, Entry<K,V> next) {    this.hash = hash;    this.key =  key;    this.value = value;    this.next = next;
}

方法

  • getKey方法:返回key值

  • getValue方法:返回value的值

  • setValue方法:修改value值

  • 重寫了equals和hashCode方法:hashCode方法通過計算該Entry的hash值與value的hash值進行異或運算;equals方法通過判斷key和value是否同時相同來判斷。

        		

延伸閱讀

學習是年輕人改變自己的最好方式-Java培訓,做最負責任的教育,學習改變命運,軟件學習,再就業(yè),大學生如何就業(yè),幫大學生找到好工作,lphotoshop培訓,電腦培訓,電腦維修培訓,移動軟件開發(fā)培訓,網(wǎng)站設計培訓,網(wǎng)站建設培訓學習是年輕人改變自己的最好方式