HashMap和ArrayList初始大小和扩容后的大小
生活随笔
收集整理的這篇文章主要介紹了
HashMap和ArrayList初始大小和扩容后的大小
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
創建HashMap對象默認情況下,數組大小為16。
開始擴容的大小=原來的數組大小*loadFactor。
擴容后大小是原來的2倍,其中加載因子loadFactor的默認值為0.75,這個參數可以再創建對象時在構造方法中指定。
例如:
16*0.75=12,默認創建一個map對象數組大小是16,當map添加12個元素到的時候就發生擴容,創建新的數組的大小2*16=32,然后重新計算每個元素在新數組中的位置,而這是一個非常消耗性能的操作,所以如果我們已經預知HashMap中元素的個數,那么預設元素的個數能夠有效的提高HashMap的性能。
?
?
?
?
ArrayList:線程不安全,查詢速度快
底層數據結構是數組結構
擴容增量:原容量的 0.5倍+1
如 ArrayList的容量為10,一次擴容后是容量為16
總結
以上是生活随笔為你收集整理的HashMap和ArrayList初始大小和扩容后的大小的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《羊了个羊》创始人被母校制成展牌
- 下一篇: 全国行政区地名大全