欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java中HashMap的初始容量設(shè)置方式

 更新時間:2021年06月19日 12:05:09   作者:割肉機(jī)  
這篇文章主要介紹了Java中HashMap的初始容量設(shè)置方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Java中HashMap的初始容量設(shè)置

根據(jù)阿里巴巴Java開發(fā)手冊上建議HashMap初始化時設(shè)置已知的大小,如果不超過16個,那么設(shè)置成默認(rèn)大小16:

集合初始化時, 指定集合初始值大小。

說明:

HashMap使用HashMap(int initialCapacity)初始化

正例:

initialCapacity = (需要存儲的元素個數(shù) / 負(fù)載因子) + 1。注意負(fù)載因子(即loader factor)默認(rèn)為0.75, 如果暫時無法確定初始值大小,請?jiān)O(shè)置為16(即默認(rèn)值)。

反例:

HashMap需要放置1024個元素,由于沒有設(shè)置容量初始大小,隨著元素不斷增加,容量7次被迫擴(kuò)大,resize需要重建hash表,嚴(yán)重影響性能。

而對于為什么負(fù)載因子是0.75,答案可以在《數(shù)據(jù)結(jié)構(gòu)與算法分析 Java語言描述》的散列章節(jié)中找到

Java HashMap的指定初始值大小和自動擴(kuò)容

HashMap指定初始值大小

指定初始值大小應(yīng)為2的冪。

如果指定的初始值不是2的冪,則HashMap的容量為大于指定初始值的2的冪;如果不指定,容量默認(rèn)為16。

HashMap自動擴(kuò)容

當(dāng)HashMap的鍵值對個數(shù)大于容量的75%時,HashMap的容量擴(kuò)大一倍。

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java基礎(chǔ)知識之CharArrayReader流的使用

    Java基礎(chǔ)知識之CharArrayReader流的使用

    這篇文章主要介紹了Java基礎(chǔ)知識之CharArrayReader流的使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • 一次Spring無法啟動的問題排查實(shí)戰(zhàn)之字節(jié)碼篇

    一次Spring無法啟動的問題排查實(shí)戰(zhàn)之字節(jié)碼篇

    最近學(xué)習(xí)了spring相關(guān)知識,公司項(xiàng)目也用到了spring,下面這篇文章主要給大家介紹了一次Spring無法啟動的問題排查實(shí)戰(zhàn)之字節(jié)碼篇的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • Spring File Storage文件的對象存儲框架基本使用小結(jié)

    Spring File Storage文件的對象存儲框架基本使用小結(jié)

    在開發(fā)過程當(dāng)中,會使用到存文檔、圖片、視頻、音頻等等,這些都會涉及存儲的問題,文件可以直接存服務(wù)器,但需要考慮帶寬和存儲空間,另外一種方式就是使用云存儲,這篇文章主要介紹了Spring File Storage文件的對象存儲框架基本使用小結(jié),需要的朋友可以參考下
    2024-08-08
  • Java接口RandomAccess全面了解

    Java接口RandomAccess全面了解

    下面小編就為大家?guī)硪黄狫ava接口RandomAccess全面了解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • Spring?Data?JPA命名約定查詢實(shí)現(xiàn)方法

    Spring?Data?JPA命名約定查詢實(shí)現(xiàn)方法

    這篇文章主要為大家介紹了Spring?Data?JPA命名約定查詢實(shí)現(xiàn)方法示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Spring Profiles使用方法詳解

    Spring Profiles使用方法詳解

    在你剛接觸SpringBoot的時候有沒有對它提供的Profile有些許不適應(yīng),經(jīng)過摸索后才領(lǐng)悟到它的強(qiáng)大。今天我就對Profile進(jìn)行一點(diǎn)歸納總結(jié),留作互聯(lián)網(wǎng)記憶
    2022-12-12
  • Java中為何要使用ArrayList

    Java中為何要使用ArrayList

    這篇文章主要介紹了Java中為何要使用ArrayList,幫助大家更好的理解和學(xué)習(xí)Java,感興趣的朋友可以了解下
    2020-09-09
  • Java中獲取?List中最后一個元素3種方法以及實(shí)際應(yīng)用

    Java中獲取?List中最后一個元素3種方法以及實(shí)際應(yīng)用

    這篇文章主要給大家介紹了關(guān)于Java中獲取?List中最后一個元素3種方法以及實(shí)際應(yīng)用的相關(guān)資料,由于List的索引是從0開始的,所以最后一個元素的索引是List的大小減1,需要的朋友可以參考下
    2023-11-11
  • 解決springcloud集成nacos遇到的問題

    解決springcloud集成nacos遇到的問題

    這篇文章介紹了如何解決springcloud集成nacos遇到的問題,文章中有詳細(xì)的代碼示例,需要的朋友可以參考一下
    2023-04-04
  • Java中四種遍歷List的方法總結(jié)(推薦)

    Java中四種遍歷List的方法總結(jié)(推薦)

    下面小編就為大家?guī)硪黄狫ava中四種遍歷List的方法總結(jié)(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04

最新評論