ArrayList和List主要區別 就是ArrayList類型不安全。


什么是不安全?

1:List大家都知道初始化的時候需要定義其類型.

例如

List<int> listTest = new List<int>();
而ArrayList,例如:
ArrayList arrayTest = new ArrayList();

2:為什么定義會有如此大的不同納?

ArrayList規定其類型默認就是object,是不是覺得好強大,好方便,
但是ArrayList幾乎是沒有人使用的吧,因為List大家一直都用
的最多的。

3:為什么ArrayList這么強大,而實際開發中幾乎沒人用吶?

注:裝箱,拆箱是非常消耗效率的。

而一般假如你要是使用
arrayTest.Add(1),

這其中會有一次裝箱的操作,將值類型的1轉為object(int型轉為object型數據,即為裝箱),

而已經定義好類型的List是不會多這么一個步驟。

如果有大量的數據,ArrayList定義的list每一個數據都需要進行這么一個步驟,

消耗的數據是很大的,具體,可以自己測測。相對而言,還是用List就夠用了。

這下知道為什么ArrayList為什么用的那么少了吧。

 

該問題的趣事:前些日子,一場面試,第一次寫面試題啊,里面就有,
“ArrayList和List區別?”,這個是在Unity面試題很常見的問題,我給出了
四個字,“效率不同”,哈哈,當時的我,其實真的不知道具體區別是啥,
因為ArrayList壓根沒使用過。其實,我們實際開發中,這種問題很多,
會用,但是根本不知道為什么,有時間,一定要去看看為什么的。


免責聲明!

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



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