arraylist 聲明時不需要指定長度也不需要指定數據類型的數組,所以有數據類型不安全和裝箱拆箱引起性能損耗的缺陷。
所以.net 2.0推出list,聲明時需指定數據類型。
例:
array
//定義
string[] strs = new string[5];
//賦值
strs[0] = "A";
strs[1] = "B";
//修改
strs[1] = "C";
//取值
string getStr = strs[1];
arraylist
//初始化
ArrayList list = new ArrayList();
//添加元素
list.Add(1);
list.Add("A");
list.Add(0.1);
//修改元素
list[2] = "B";
//指定索引插入元素
list.Insert(1, "ABC");
//移除元素
list.RemoveAt(1);
//裝箱:把值類型轉換成引用類型;
//拆箱:把引用類型轉換成值類型。
//裝箱 int i = 1; object obj = (object)i; //拆箱 int j = (int)obj;
list
//初始化
List<int> list = new List<int>();
//添加
list.Add(12);
list.Add(34);
//編譯器會進行類型驗證、下面代碼編譯失敗
//list.Add("ABC");
//修改
list[0] = 1;
//移除
list.RemoveAt(0);