最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ArrayList的自動(dòng)擴(kuò)充機(jī)制實(shí)例解析

 更新時(shí)間:2017年10月24日 10:07:52   作者:ysk_xh_521  
本文主要介紹了ArrayList的自動(dòng)擴(kuò)充機(jī)制,由一個(gè)題目切入主題,逐步向大家展示了ArrayList的相關(guān)內(nèi)容,具有一定參考價(jià)值,需要的朋友可以了解下。

用一道選擇題作為本文的開始吧!

ArrayList list = new ArrayList(20);中的list擴(kuò)充幾次

A.0
B.1
C.2
D.3

答案:A

1、ArrayList的默認(rèn)初始容量為10,當(dāng)然也可以自定義指定初始容量,隨著動(dòng)態(tài)的向其中添加元素,其容量可能會(huì)動(dòng)態(tài)的增加,那么擴(kuò)容的公式為:

新容量 = 舊容量/2 + 舊容量

比如:初始容量為4,其容量的每次擴(kuò)充后的新容量為:4->6->9->13->19->…

即每次擴(kuò)充至原有基礎(chǔ)的1.5倍

ArrayList的構(gòu)造函數(shù)總共有三個(gè):

(1)ArrayList()構(gòu)造一個(gè)初始容量為 10 的空列表。
(2)ArrayList(Collection<? extends E> c)構(gòu)造一個(gè)包含指定 collection 的元素的列表,這些元素是按照該 collection 的迭代器返回它們的順序排列的。
(3)ArrayList(int initialCapacity)構(gòu)造一個(gè)具有指定初始容量的空列表。

調(diào)用的是第三個(gè)構(gòu)造函數(shù),直接初始化為大小為20的list,沒有擴(kuò)容,所以選擇A

如果初始化為ArrayList(0),則會(huì)在新容量計(jì)算完畢后,增加至1;

另外與之類似的還有,

2、HashMap的初始大小為16,增長(zhǎng)時(shí),直接容量翻番,如源代碼。

void addEntry(int hash, K key, V value, int bucketIndex) { 
    if ((size >= threshold) && (null != table[bucketIndex])) { 
      resize(2 * table.length);//原容量2倍 
      hash = (null != key) ? hash(key) : 0; 
      bucketIndex = indexFor(hash, table.length); 
    } 
    createEntry(hash, key, value, bucketIndex); 
} 

3、Vector的初始大小為10,如果沒有指定每次增長(zhǎng)的大小,則默認(rèn)是翻倍增長(zhǎng)。

總結(jié)

以上就是本文關(guān)于ArrayList的自動(dòng)擴(kuò)充機(jī)制實(shí)例解析的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:Spring Java-based容器配置詳解、ArrayList在for循環(huán)中使用remove方法移除元素方法介紹等,有什么問題可以隨時(shí)留言,小編會(huì)及時(shí)回復(fù)大家的,感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • Java批量導(dǎo)出word壓縮后的zip文件案例

    Java批量導(dǎo)出word壓縮后的zip文件案例

    這篇文章主要介紹了Java批量導(dǎo)出word壓縮后的zip文件案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • Mockito mock Kotlin Object類方法報(bào)錯(cuò)解決方法

    Mockito mock Kotlin Object類方法報(bào)錯(cuò)解決方法

    這篇文章主要介紹了Mockito mock Kotlin Object類方法報(bào)錯(cuò)解決方法,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-09-09
  • JAVA深入探究之Method的Invoke方法

    JAVA深入探究之Method的Invoke方法

    這篇文章主要給大家介紹了關(guān)于JAVA深入探究之Method的Invoke方法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Java壓縮文件工具類ZipUtil使用方法代碼示例

    Java壓縮文件工具類ZipUtil使用方法代碼示例

    這篇文章主要介紹了Java壓縮文件工具類ZipUtil使用方法代碼示例,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-11-11
  • Java冒泡排序法和選擇排序法的實(shí)現(xiàn)

    Java冒泡排序法和選擇排序法的實(shí)現(xiàn)

    這篇文章主要介紹了Java冒泡排序法和選擇排序法的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Spring前后端跨域請(qǐng)求設(shè)置代碼實(shí)例

    Spring前后端跨域請(qǐng)求設(shè)置代碼實(shí)例

    這篇文章主要介紹了Spring前后端跨域請(qǐng)求設(shè)置代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • java實(shí)現(xiàn)圖片滑動(dòng)驗(yàn)證(包含前端代碼)

    java實(shí)現(xiàn)圖片滑動(dòng)驗(yàn)證(包含前端代碼)

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)圖片滑動(dòng)驗(yàn)證,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • SpringMVC將請(qǐng)求和響應(yīng)的數(shù)據(jù)轉(zhuǎn)換為JSON格式的幾種方式

    SpringMVC將請(qǐng)求和響應(yīng)的數(shù)據(jù)轉(zhuǎn)換為JSON格式的幾種方式

    這篇文章主要給大家介紹餓了SpringMVC將請(qǐng)求和響應(yīng)的數(shù)據(jù)轉(zhuǎn)換為JSON格式的幾種方式,文中通過代碼示例和圖文結(jié)合給大家介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-11-11
  • Java 泛型詳解與范例

    Java 泛型詳解與范例

    hello !大家好!今天的主題就是:泛型。在使用集合類時(shí),大家就已經(jīng)接觸到泛型了,那就是每個(gè)集合類后面的尖括號(hào)<>,這樣一對(duì)尖括號(hào),在java中就稱為泛型。那么泛型這一個(gè)點(diǎn),我們又該知道多少呢?我們往下看
    2021-11-11
  • springboot項(xiàng)目中PropertySource如何讀取yaml配置文件

    springboot項(xiàng)目中PropertySource如何讀取yaml配置文件

    這篇文章主要介紹了springboot項(xiàng)目中PropertySource如何讀取yaml配置文件問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01

最新評(píng)論

靖远县| 剑阁县| 宁武县| 塔城市| 临邑县| 祁门县| 尉氏县| 上栗县| 松阳县| 张家界市| 临西县| 巴马| 阳新县| 康平县| 桐柏县| 青河县| 沙湾县| 葫芦岛市| 长宁区| 威远县| 通榆县| 佛坪县| 达日县| 都江堰市| 水富县| 连平县| 新邵县| 宁海县| 集安市| 历史| 汪清县| 恭城| 福安市| 南安市| 成安县| 马关县| 诏安县| 建平县| 峡江县| 南充市| 宜都市|