请问空号里面(arr.Rank-1)是什么含义,为什么在去+1?

int[,] arr = new int[2, 2] { { 1, 2 }, { 3,4} };
Console.Write("数组的行数为: ");
Console.WriteLine(arr.Rank);
Console.Write("数组的列数是:");
Console.WriteLine(arr.GetUpperBound(arr.Rank-1)+1);
代码中arr.Rank是数组arr用到Rank的属性来获取数组的行数
arr.GetUpperBound是获取数组的列数

元芳怎么了
浏览 286回答 2
2回答

莫回无

arr.GetUpperBound是获取arr指定维度的上限,arr.Rank+1是指arr中的第一维度,也就是{1,2}这一维,而用GetUpperBound获取的是第一维的最大下标,因为数组下标是从0开始,所以1,2分别是arr[0][0]和arr[0][1],所以这里GetUpperBound取到的值是1,所以要加1.不知道我说的明不明白

小唯快跑啊

因为数组下标是以0开始的
打开App,查看更多内容
随时随地看视频慕课网APP