首页 > 技术文章 > Array与ArrayList的区别及转换

alexzp 2013-10-16 11:19 原文

相同点:

(1)所创建的对象都是在托管堆中

(2)都具有索引

(3)都能够对自身进行枚举,都实现了IEnumerable接口

不同点:

(1)命名空间不同:ArrayList位于System.Collections

 (2) 变量申明不同:Array必须进行实例化(声明数组大小),长度固定,而ArrayList可以只是声明,长度动态;

(3)维度不同:Array可以是多维的,而ArrayList始终只是一维的

(4)存储对象不同:Array只能存储同构的且是连续的,而ArrayList可以存储异构的且不失连续的

(5)操作项不同:Array不能随意添加和删除,而ArrayList可以

Array转换到ArrayList:   

    int[] lv_arr = newint[] { 3,2,4,5,8,7};

    lv_arrList = ArrayList.Adapter(lv_arr);

ArrayList转换到Array:            

  int[] lv_arrTemp = (int[])lv_arrList.ToArray(typeof(int));

 

 

推荐阅读