我正在尝试制作一个C#for循环,该循环将遍历一系列项并打印用户的第一个日期。下面是数组的代码(我认为是正确的)。
string[,] arrHolidays = new string[2, 3];
arrHolidays[0, 0] = "10/05/2015";
arrHolidays[0, 1] = "15/05/2015";
arrHolidays[0, 2] = "Danny";
arrHolidays[1, 0] = "20/05/2015";
arrHolidays[1, 1] = "22/05/2015";
arrHolidays[1, 2] = "Kieran";
以下是For循环的代码(引发错误)
for(int i = 0; i < arrHolidays.Length; i++)
{
Console.WriteLine(arrHolidays[i, 0]);
}
索引超出范围异常未处理。这是我收到的错误。当它引发错误并且我检查值1时,如果对解决它有帮助,则为2。
我期望在控制台应用程序中看到以下内容:
10/05/201520/05/2015
INB4我几乎没有任何C#经验,这是我的第一个项目,所以请解释任何帮助:)
最佳答案
您必须使用GetLength
方法,而不是Length
属性。
多维数组的Length
属性返回数组中所有项目的总数。 GetLength
方法返回给定维的大小数(其中维被指定为从零开始的索引)。
因此,arrHolidays.Length
将返回6。
将for
循环更改为:
for (int i = 0; i < arrHolidays.GetLength(0); i++)
{
Console.WriteLine(arrHolidays[i, 0]);
}