哈希表的數據結構
HashMap底層數據結構是哈希表, 也叫散列表。
哈希表就是一個數組, 數組的每個元素是一個單向鏈表。
數組就是一種順序存儲結構, 特點是可以通過數組的下標(索引值)快速的訪問數組的每個元素, 實現了隨機訪問; 在向數組中插入元素/刪除元素時, 可能需要擴容,移動/復制元素,效率比較低。
單向鏈表就是一種鏈式存儲結構, 特點插入/刪除時,不需要移動元素,效率比較高;在訪問元素時總是從頭結點逐個訪問,相對數組效率比較低。
HashMap的put(key,value)的工作原理