陣列 ArrayList List三者區別

2021-08-19 16:12:27 字數 885 閱讀 9744

一、 陣列

優點:在記憶體中時連續的,速度較快,操作簡單。

缺點:定義陣列時要定義其長度,不是很靈活,過長過短都會造成問題。不方便進行資料的新增、插入和移除。

例如:int i=new int[2];

i[0]=111;

i[1]=123;//賦值

i[1]=1234;//修改

二、集合arraylist

優點:命名空間system.collections下的一部分。大小是動態擴充與收縮的。在宣告arraylist物件時不需要指定它的長度。arraylist繼承了ilist介面,可以很方便的進行資料的新增、插入和移除.

缺點:當向集合插入不同型別的資料後(arraylist將資料當作object儲存),在進行資料處理時容易出現型別不匹配的錯誤,使用時需要進行型別轉換處理,存在裝箱與拆箱操作,造成效能大量損耗的現象。

例如:arraylist list = new arraylist();

list.add(「aa」);

list.add(11);

list[1] = 123;//修改

移除list.remove(123);

list.removeat(0);

三、泛型list

優點:與集合arraylist類似且繼承ilist介面,在宣告list集合時也要宣告集合內部資料的物件型別,避免了裝箱和拆箱的問題。

例如:listlist=new list();

list.add(123);

list[0]=111;//修改

list.removeat(0);//移除

如果list.add(「abc」);//編譯器就會報錯,避免了型別安全問題與裝箱拆箱的效能問題。

**:

C 陣列,ArrayList,List區別

共同點 都能儲存一組物件 陣列 在記憶體中時連續儲存的,所以索引很快,賦值與修改元素很快,事件複雜度為o 1 折半查詢法查詢元素效率高。增添刪除元素的時候需要移動大量元素,因此提供了arraylist物件 string s new string 3 s 0 a 賦值 s 0 a1 修改 arrayl...

C 陣列 ArrayList List區別

system.collenctions和system.collenctions.generic 中提供了很多列表 集合和陣列。例如 list集合,陣列int,string dictory字典等等。但是這些列表 集合和陣列的執行緒都不是安全的,不能接受併發請求。1.陣列 優點 陣列在記憶體中是連續儲存...

陣列 ArrayList List三者區別

優點 在記憶體中時連續的,速度較快,操作簡單。缺點 定義陣列時要定義其長度,不是很靈活,過長過短都會造成問題。不方便進行資料的新增 插入和移除。例如 int i new int 2 i 0 111 i 1 123 賦值 i 1 1234 修改 優點 命名空間system.collections下的一...