C# 多維數組
C# 多維數組
C# 支持多維數組。多維數組又稱為矩形數組。
您可以聲明一個 string 變量的二維數組,如下:
string [,] names;
或者,您可以聲明一個 int 變量的三維數組,如下:
int [ , , ] m;
二維數組
多維數組最簡單的形式是二維數組。一個二維數組,在本質上,是一個一維數組的列表。
一個二維數組可以被認為是一個帶有 x 行和 y 列的表格。下面是一個二維數組,包含 3 行和 4 列:

因此,數組中的每個元素是使用形式為 a[ i , j ] 的元素名稱來標識的,其中 a 是數組名稱,i 和 j 是唯一標識 a 中每個元素的下標。
初始化二維數組
多維數組可以通過在括號內為每行指定值來進行初始化。下面是一個帶有 3 行 4 列的數組。
int [,] a = new int [3,4] { {0, 1, 2, 3} , /* 初始化索引號為 0 的行 */ {4, 5, 6, 7} , /* 初始化索引號為 1 的行 */ {8, 9, 10, 11} /* 初始化索引號為 2 的行 */ };
訪問二維數組元素
二維數組中的元素是通過使用下標(即數組的行索引和列索引)來訪問的。例如:
int val = a[2,3];
上面的語句將獲取數組中第 3 行第 4 個元素。您可以通過上面的示意圖來進行驗證。讓我們來看看下面的程序,我們將使用嵌套循環來處理二維數組:
實例
using System;
namespace ArrayApplication
{
class MyArray
{
static void Main(string[] args)
{
/* 一個帶有 5 行 2 列的數組 */
int[,] a = new int[5, 2] {{0,0}, {1,2}, {2,4}, {3,6}, {4,8} };
int i, j;
/* 輸出數組中每個元素的值 */
for (i = 0; i < 5; i++)
{
for (j = 0; j < 2; j++)
{
Console.WriteLine("a[{0},{1}] = {2}", i, j, a[i,j]);
}
}
Console.ReadKey();
}
}
}
namespace ArrayApplication
{
class MyArray
{
static void Main(string[] args)
{
/* 一個帶有 5 行 2 列的數組 */
int[,] a = new int[5, 2] {{0,0}, {1,2}, {2,4}, {3,6}, {4,8} };
int i, j;
/* 輸出數組中每個元素的值 */
for (i = 0; i < 5; i++)
{
for (j = 0; j < 2; j++)
{
Console.WriteLine("a[{0},{1}] = {2}", i, j, a[i,j]);
}
}
Console.ReadKey();
}
}
}
當上面的代碼被編譯和執行時,它會產生下列結果:
a[0,0]: 0 a[0,1]: 0 a[1,0]: 1 a[1,1]: 2 a[2,0]: 2 a[2,1]: 4 a[3,0]: 3 a[3,1]: 6 a[4,0]: 4 a[4,1]: 8