array与arrayList的区别

array:数组是指一组数据的集合。

 

arrayList:ArrayList是一个泛型类。
ArrayList相当于C++ 的vector,用于存储对象。ArrayList的长度是动态的,不受限制,可以存储任意多的对象,但是只能存储对象,不能存储原生数据类型例如int

 

相同点:

1:都具有索引,可以任意通过index直接获取或修改数据。

2:创建的对象都放在堆中。

3:都能够对自身进行枚举(因为都实现了IEnumerable接口)。

不同点:

1:在创建数组的时候必须指定数组大小及数据类型。

2:ArrayList的大小可以动态指定,其大小可以在初始化时指定,也可以不指定,也就是说该对象的空间可以任意增加

3:arrayList是array的复杂版本,能存放不同数据类型及对象。因为它里面存放的都是被装箱了的Object型对象,实际上ArrayList内部就是使用"object[] _items;"这样一个私有字段来封装对象的。

 

posted @ 2019-07-29 22:55  菜农名企梦  阅读(2333)  评论(0编辑  收藏  举报