下面我們來做一個給交錯數組賦值以及遍歷交錯數組的例子,讓我們體會一下和規則數組的代碼區別。我來解釋一下下面的例子,我定義了3行的交錯數組,第一行輸出姓名、口頭禅、籍貫,第二行用直接賦值法定義了3列分別是劉大夫、很是費解、迪斯尼,第三行只定義了2列,按照索引方式給3行1列的元素賦值為蠟筆小新、用索引的方式說賦的下一個值為給行索引為2列索引為1的元素賦值為老婆!
string[][] xinxi = new string[3][];
Console.WriteLine("正在給交錯數組賦值!");
xinxi[0] =new string [] {"姓 名","口頭禅","籍 貫"};
xinxi[1] = new string[] { "劉大夫", "很是費勁","《一日一囧》"};
xinxi[2] = new string[2];
xinxi[2][0] = "蠟筆小新";
xinxi[2][1] = "老婆!";
Console.WriteLine("現在准備輸出!");
Console.WriteLine("*************");
foreach(string []hang in xinxi )//因為交錯數組的特性必須先用數組hang存儲遍歷出交錯數組xinxi的每一行
{
foreach (stringlIE in hang)//在行的數組中遍歷每一列存儲在lIE元素中
{
Console.Write(lIE);//輸出遍歷的元素
}
Console.WriteLine();
}
結果顯示為:
我們把上面的例子修改一下用for循環輸出元素,讓我們體會一下交錯數組和規則數組的區別。
交錯數組:string[][] xinxi = new string[3][];
Console.WriteLine("正在給交錯數組賦值!");
xinxi[0] = new string[] { " 姓 名 ", " 口頭禅 ", " 籍 貫 " };
xinxi[1] = new string[] { " 劉 大 夫 ", " 很是費勁" , " 《一日一囧》" };
xinxi[2] = new string[2];
xinxi[2][0] = " 蠟筆小新 ";
xinxi[2][1] = " 老婆!";
Console.WriteLine("現在准備輸出!");
Console.WriteLine("******************************");
for (int i = 0; i < xinxi.Length;i++ )//先得到行索引
{
for (int j = 0; j < xinxi[i].Length; j++)//得到行中的列索引
{
if (xinxi[i][j] != null) //如果此元素不為空時輸出元素值
{
Console.Write(xinxi[i][j]);
}
else
{
Console.Write("-------"); //如果此元素為空時輸出“-------”
}
}
Console.WriteLine();
}