C# 在使用時 array 時,要先宣告陣列大小。
若一開始不確定陣列大小,
想要使用時再動態增加大小,可以使用 List 來達成此效果
例如:
List<string> my1d; // 1維:List 裡面放不確定數量的 stirng
List<List<string>> my2d;// 2維:List 裡面放不確定數量的 List<string>
範例:以 List 做成類似 3維陣列,但每一維度,底下元素個數不固定
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
/*希望達成此效果Array ( 0 => Array( 0 => Array("A1", "A2", "A3", "A4"), 1 => Array("B1", "B2", "B3") ), 1 => Array( 0 => Array("C1", "C2") ));*/List<List<List<string>>> my3d = new List<List<List<string>>>();List<string> my1d;List<List<string>> my2d;//my2d = new List<List<string>>();my1d = new List<string>();my1d.Add("A1");my1d.Add("A2");my1d.Add("A3");my1d.Add("A4");my2d.Add(my1d);my1d = new List<string>();my1d.Add("B1");my1d.Add("B2");my1d.Add("B3");my2d.Add(my1d);my3d.Add(my2d);//my2d = new List<List<string>>();my1d = new List<string>();my1d.Add("C1");my1d.Add("C2");my2d.Add(my1d);my3d.Add(my2d);Console.WriteLine("my3d[0][0][2] = " + my3d[0][0][2]); // my3d[0][0][2] = A3Console.WriteLine("my3d[0][1][0] = " + my3d[0][1][0]); // my3d[0][1][0] = B1Console.WriteLine("my3d[1][0][1] = " + my3d[1][0][1]); // my3d[1][0][1] = C2Console.WriteLine("my3d.Count = " + my3d.Count); // my3d.Count = 2Console.WriteLine("my3d[0].Count = " + my3d[0].Count); // my3d[0].Count = 2Console.WriteLine("my3d[1].Count = " + my3d[1].Count); // my3d[1].Count = 1Console.WriteLine("my3d[0][0].Count = " + my3d[0][0].Count); // my3d[0][0].Count = 4Console.WriteLine("my3d[0][1].Count = " + my3d[0][1].Count); // my3d[0][1].Count = 3Console.WriteLine("my3d[1][0].Count = " + my3d[1][0].Count); // my3d[1][0].Count = 2 |
