Array與List
陣列Array是個大家非常常用的變數型態。但是,他的操作並不是太多。如果你想要用在學校學到的資料結構的Add, Remove, Insert, Sort等等的方式。Array並沒有提供。但是,在C#裡面有提供了一個List型態。就可以達成這些功能。
首先,先說一下Array與List之間的互換。
Array連結至List:
int[] a = int[5] {5,3,4,1,2};
List list_a=new List(a);
List變回到a Array的部分,可以用
a=list_a.ToArray();
所以,可以先把Array變到List, List操作完再變回Array即可。比如說:
int[] a = int[5] {5,3,4,1,2};
List list_a=new List(a);
list_a.Add(10);
a=list_a.ToArray(); //a變成int[6] {5,3,4,1,2,10}
list_a.Remove(1);//移除數字為1的項目
a=list_a.ToArray(); //a變成int[5] {5,3,4,2,10}
list_a.Insert(3,8);//在Index 3裡面加入值為8的數字
a=list_a.ToArray(); //a變成int[6] {5,3,4,8,2,10}
list_a.Sort();
a=list_a.ToArray(); //a變成int[6] {2,3,4,5,8,10}
List也可以對應到多維不規則陣列:
int[] p1 = new int[4] { 4, 1, 2, 3 };
int[] p2 = new int[6] { 5, 3, 1, 2, 8, 9 };
List myList = new List();
myList.Add(p1);
myList.Add(p2);
int[][] p1p2 = myList.ToArray();
首先,先說一下Array與List之間的互換。
Array連結至List:
int[] a = int[5] {5,3,4,1,2};
List
List變回到a Array的部分,可以用
a=list_a.ToArray();
所以,可以先把Array變到List, List操作完再變回Array即可。比如說:
int[] a = int[5] {5,3,4,1,2};
List
list_a.Add(10);
a=list_a.ToArray(); //a變成int[6] {5,3,4,1,2,10}
list_a.Remove(1);//移除數字為1的項目
a=list_a.ToArray(); //a變成int[5] {5,3,4,2,10}
list_a.Insert(3,8);//在Index 3裡面加入值為8的數字
a=list_a.ToArray(); //a變成int[6] {5,3,4,8,2,10}
list_a.Sort();
a=list_a.ToArray(); //a變成int[6] {2,3,4,5,8,10}
List也可以對應到多維不規則陣列:
int[] p1 = new int[4] { 4, 1, 2, 3 };
int[] p2 = new int[6] { 5, 3, 1, 2, 8, 9 };
List
myList.Add(p1);
myList.Add(p2);
int[][] p1p2 = myList.ToArray();
留言