Array和ArrayList区别
Array
在C#中的数组也是对象,实际上是Array类的实例。
主要区别
Array类型的变量在声明的同时,必须进行实例化,至少是初始化数组的大小,而 ArrayList可以只先声明。
Array只能存储同构的对象,而ArrayList可以存储异构的对象。
同构的对象是指类型相同的对象,如果声明为int[]型的数组,则只能存放整型数据,string[]只能存放字符型数据,但是,声明为Object[]的数组除外。
ArrayList可以存放任何不同类型的数据,因为,它里面存放的都是被装箱了的Object型对象,实际上,ArrayList内部就是使用Object[]_items,这样一个私有字段来封装对象的。
Array是始终连续存放的。
ArrayList的存放不一定是连续的。
Array对象是初始化必须只指定大小、且创建后的数组大小是固定的。
ArrayList的大小可以动态指定,其大小可以在初始时指定,也可以不指定,也就是该对象的空间可以任意增加。
Array不能够随意添加或删除其中的项。
ArrayList可以在任意位置插入和删除项。