程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#數組的屬性、foreach遍歷、交錯數組與矩形數組的區別(4)

C#數組的屬性、foreach遍歷、交錯數組與矩形數組的區別(4)

編輯:關於C語言
面我們來做一個給交錯數組賦值以及遍歷交錯數組的例子,讓我們體會一下和規則數組的代碼區別。我來解釋一下下面 的例子,我定義了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();
}

輸出結果和上一張圖片結果一致。而如果把第三行的列元素定義 為3時,此數組變成了規則的3行3列的二維數組,還是賦索引為0和1的元素值時:

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved