1. 程式人生 > >c#中陣列 list Arraylist

c#中陣列 list Arraylist

陣列:

int [] a = new int[3];

優點:存放相同型別的資料,陣列在記憶體中是連續儲存的,所以它的索引速度是非 常的快,而且賦值與修改元素也很簡單。
缺點:在陣列的兩個資料間插入資料很麻煩,還有我們在宣告陣列的時候,必須同時指明陣列的長度,陣列的長度過長,會造成記憶體浪費,陣列和長度過短,會造成資料溢位的錯誤。

list :

List<int> list = new List<int>();

優點:可以隨意增刪改查,動態分配記憶體。
缺點:所儲存的資料型別固定的,如果賦值一個不同的型別會報錯。

Arraylist:

Arraylist list = new Arraylist();

優點:可以儲存不同型別的引數;
缺點:儲存不同引數的時候,需要裝箱拆箱,消耗比較大。

裝箱與拆箱的概念:
: 裝箱:就是將值型別的資料打包到引用型別的例項中 比如將int型別的值123
賦給object物件o
    int i=123; object o=(object)i;
拆箱:就是從引用資料中提取值型別 比如將object物件o的值賦給int型別的變
量i
 object o=123; int i=(int)o;
裝箱與拆箱的過程是很損耗效能的。