C# 多維數(shù)組
多維數(shù)組是使用多個索引訪問其元素的數(shù)組。例如,假定要確定一座山相對于某位置的高度,可使用兩個坐標x和y來指定一個位置。把這兩個坐標用作索引,讓數(shù)組hiUHeight可以用每對坐標來存儲高度,這就要使用多維數(shù)組了。
像這樣的二維數(shù)組可以聲明如下:
<baseType>[,] <name>;
多維數(shù)組只需要更多逗號,例如:
<baseType>[,,,] <name>;
該語句聲明了一個4維數(shù)組。賦值也使用類似的語法,用逗號分隔大小。要聲明和初始化二維數(shù)組hillHeight,其基本類型是double, x的大小是3, y的大小是4,則需要:
double[,] hillHeight = new double[3,4];
還可以使用字面值進行初始賦值。這里使用嵌套的花括號塊,它們之間用逗號分開,例如:
double[,] hillHeight = { { 1, 2, 3, 4 }, { 2, 3, 4, 5 }, { 3, 4, 5, 6 } };
這個數(shù)組的維度與前面的相同,也是3行4列。通過提供字面值隱式定義了這些維度。
要訪問多維數(shù)組中的每個元素,只需要指定它們的索引,并用逗號分開,例如:
hillHeight[2,1]
接著就可以像處理其他元素那樣處理它了。這個表達式將訪問上面定義的第3個嵌套數(shù)組中的第2個元素 (其值是4)。記住,索引從0開始,第一個數(shù)字是嵌套的數(shù)組。換言之,第一個數(shù)字指定花括號對,第2個數(shù)字指定該對花括號中的元素。用圖來可視化地表示這個數(shù)組。
hillHeight [0,0] |
| hillHeight [0,1] | hillHeight [0,2] | hillHeight [0,3] | ||||
1 | 2 | 3 | 4 | |||||
hillHeight [1,0] | hillHeight [1,1] | hillHeight [1.2] | hillHeight (1,3] | |||||
2 | 3 | 4 | 5 | |||||
hillHeight (2,0] | hillHeight [2,1] | hillHeight [2,2] | hillHeight [2,3] | |||||
3 | 4 | 5 | 6 |
foreach循環(huán)可以訪問多維數(shù)組中的所有元素,其方式與訪問一維數(shù)組相同,例如:
double[,] hillHeight = { { 1, 2, 3, 4 }, { 2, 3, 4, 5 }, { 3, 4, 5, 6 ));
foreach (double height in hillHeight)
{
WriteLine($"{height}");
}
元素的輸出順序與賦予字面值的順序相同(這里顯示了元素的標識符而非實際值):
hillHeight[0,0]
hillHeight[0,l]
hillHeight[0,2]
hillHeight[0,3]
hillHeight[1,0]
hillHeight[1,1]
hillHeight[1,2]
...
點擊加載更多評論>>