千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > JDK7 HashMap如何實現?

JDK7 HashMap如何實現?

來源:千鋒教育
發布人:wjy
時間: 2022-09-13 17:44:16 1663062256

  哈希表有兩種實現方式,一種開放地址方式(Open addressing),另一種是沖突鏈表方式(Separate chaining with linked lists)。

  Java7 HashMap采用的是沖突鏈表方式。

JDK7 HashMap如何實現

 

  從上圖容易看出,如果選擇合適的哈希函數,put()和get()方法可以在常數時間內完成。但在對HashMap進行迭代時,需要遍歷整個table以及后面跟的沖突鏈表。因此對于迭代比較頻繁的場景,不宜將HashMap的初始大小設的過大。

  有兩個參數可以影響HashMap的性能: 初始容量(inital capacity)和負載系數(load factor)。初始容量指定了初始table的大小,負載系數用來指定自動擴容的臨界值。當entry的數量超過capacity*load_factor時,容器將自動擴容并重新哈希。對于插入元素較多的場景,將初始容量設大可以減少重新哈希的次數。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
久久亚洲中文字幕精品一区四,亚洲日本另类欧美一区二区,久久久久久久这里只有免费费精品,高清国产激情视频在线观看
日韩国产欧美制服中文 | 这里只有精品最新地址在线 | 午夜精品网站亚洲一级在线 | 五月激情婷婷丁香综合基地 | 中文字幕免費無線觀看 | 中文字幕乱码亚洲无线码 |