關於HashMap put元素的原理

2022-09-11 07:36:09 字數 504 閱讀 3797

hashmap集合put元素的原理:

(1)計算key的hashcode

(2)將key的hashcode作為計算因子,通過雜湊演算法計算hashmap的陣列下標index

(3)如果index下標的陣列元素為空,直接put(新增元素)

(4)如果index下標的陣列元素不為空,呼叫key的equal方法,判斷index位置的鍊錶是否存在

(5)如果找到鍊錶中某個元素與key的equals方法相等,則使用value更新

(6)如果未找到鍊錶中某個元素與key的equals方法相等,則新增

一般面試的時候,經常會問到hashmap的原理。起初一直不理解,搞清楚hashmap的原理很重要嗎?我就知道hashmap是執行緒不安全的。後來仔細看了下hashmap的底層實現原理,

原來hashmap既具有陣列的快速查詢,又兼具鍊錶的快速插入特性。雖然不是執行緒安全的,但通過執行緒安全處理之後,無論是查詢還是新增元素都很高效,用途廣泛,因此掌握hashmap的底層原理的重要性不言而喻了。

關於元素的隱藏

又是好久沒寫部落格了。每每想寫篇部落格,卻發現比我寫得好的多不勝數。當然,寫部落格的初心不會為了攀比和炫耀,但看到別人寫得如此甚好,我只能自慚形穢了。於是選擇了摘抄在自己的筆記裡 onenote中 在此也向那些寫部落格的人表達敬意。因為你們,我收穫了很多。因為你們,很多次遇到難題,我迎面而解。也感激...

關於子元素的margin top影響父元素

來看看這個問題 子元素為什麼設定margin top會影響父元素的margin top。先把html,body,div的預設margin,padding設為0,再給父元素設定寬高,子元素設定寬高。然後又設定子元素的margin top為20px。效果如下 查了下,簡單來說是因為父元素沒有設定padd...

關於元素的定位詳解

在web前端中,元素的定位是必須掌握的,然後也是比較容易搞混淆的 positon包含以下值 1.absolute 絕對定位 相對位置為最近一級的非static定位的父元素 2.relative 相對定位 相對正常位置進行布局 3.fixed 固定定位 相對於瀏覽器視窗進行定位 4.static 沒有...