正文
本篇主要分析ArrayList的自動(dòng)擴(kuò)容機(jī)制,add和remove的相關(guān)方法。
作為一個(gè)list,add和remove操作自然是必須的。
前面說(shuō)過(guò),ArrayList底層是使用Object數(shù)組實(shí)現(xiàn)的。數(shù)組的特性是大小固定,這個(gè)特性導(dǎo)致的后果之一就是,當(dāng)ArrayList中成員個(gè)數(shù)超過(guò)capacity后,就需要重新分配一個(gè)大的數(shù)組,并將原來(lái)的成員拷貝到新的數(shù)組之中。
add操作前都需要保證capacity足夠,因此擴(kuò)容機(jī)制和add放在一起講解。
1.ArrayList的自動(dòng)擴(kuò)容機(jī)制
ArrayList有兩個(gè)概念,capacity和size。capacity就是底層Object數(shù)組的length,表示能容納的最大成員數(shù);size則表示已經(jīng)存儲(chǔ)的成員數(shù),可以通過(guò)size()函數(shù)獲取。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26