如何从2D数组中的每个数组中获得最大值并将其分配给新数组?

  • 本文关键字:数组 分配 新数组 2D 最大值 c#
  • 更新时间 :
  • 英文 :


错误代码段

我试图从每个嵌套数组中看到的最大元素"数组"并将最大的数字分配到一个单独的数组中,我得到了越界错误,如图所示,我没有想法,有人能帮助我吗?

多维数组的长度是所有维度的长度的乘积。多维数组中所有元素的计数)。在你的例子中,这是3*4或12。当代码循环到i = 3时,索引操作越界。

使用数组。Rank作为外部循环的条件,Array.GetLength(int)作为内部循环的条件:

for(var i = 0; i < arr.Rank; ++i)
for(var j = 0; j < arr.GetLength(i); ++j)
… arr[i,j] …

参见Array.GetLength(int) doc

最新更新