list的add()方法與addAll()方法簡介


簡單描述:月讀別人的代碼,發現了一個有意思的東西,list的一個方法,addAll(),然后就去度娘了一下,發現這個還挺有用的。

吐槽一下:為什么自己沒發現這個方法呢?因為平時自己寫list的時候,基本上都是手敲上去的list.add(),代碼提示都沒有仔細看,其實這是個挺壞的習慣,因為代碼提示會給出相關的方法,對於自己沒用過的方法,完全可以自己去查資料,或者親自實踐一下,調用這個方法,從而學到一些新的東西。

正經的:

add()是將傳入的參數作為當前List中的一個item元素存儲,即使你傳入一個ListOne也只會使當前的List增加1個元素(該元素就是listOne)

addAll()是傳入一個List,將此List中的所有元素加入到當前List中,也就是當前List會增加的元素個數為傳入的List的大小

addAll(Collection c)

此方法按照指定 collection 的迭代器所返回的元素順序,將該 collection 中的所有元素添加到此列表的尾部。如果正在進行此操作時修改指定的 collection ,那么此操作的行為是不確定的。(這意味着如果指定的 collection是此列表且此列表是非空的,那么此調用的行為是不確定的)。

C

包含要添加到此列表中的元素的 collection

return

如果此列表由於調用而發生更改,則返回 true

Throws

NullPointerException: 如果指定的 collection 為 null

 

eg:

Collection result = new ArrayList(); 
Collection list = new ArrayList();

......

分析: 

result.addAll(list);//把list中的每一個元素加到result中,result.size()==list.size()

result.add(list);//將list作為一個元素加到result中,則result.size()為1

大佬鏈接:https://www.cnblogs.com/wudage/p/6878096.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM