首页 > 代码库 > ArrayList和List主要区别 就是ArrayList类型不安全。

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压根没使用过。其实,我们实际开发中,这种问题很多,
会用,但是根本不知道为什么,有时间,一定要去看看为什么的。

ArrayList和List主要区别 就是ArrayList类型不安全。