二维数组索引问题

时间:2010-11-22 08:03:50

标签: c# arrays

我很困惑,如果我创建数组[5,10]那么这意味着它有5行10列?所以它的Y,X,对吗? 因为我习惯使用X,Y命令而对我感到困惑。

3 个答案:

答案 0 :(得分:2)

嗯,行,列,X,Y,这完全取决于解释不是吗?

[5,10]创建一个包含5个项目的数组。每个项目都是10个成员阵列。

[10,5]创建一个包含10个项目的数组。每个项目都是5个成员阵列。

我希望这能解决问题。

答案 1 :(得分:1)

使用上述语法实际创建的内容称为“multidimensional array”或数组数组。具体来说,您正在创建一个包含5个项目的数组,这5个项目中的每个项目本身都包含10个项目。

单维数组可以看作是一行元素:

Single dimensional array

因此,可以将二维数组(多维数组的最常见情况)视为简单地添加另一行元素,从而生成您熟悉的表格可视化:

Bi-dimensional array

但是,您可以根据自己的意愿精神构建该表。如果您对(X, Y)语法更为熟悉,请改用它。

请记住,多维数组不仅限于两个索引。这使得在增加索引数量时更难以将其概念化为表格。

答案 2 :(得分:1)

除非您在紧密循环中处理大型数组(以便内存缓存受到影响),否则如何解释数组中的维度并不重要。

二维数组没有特殊情况会强制您使用[y,x]而不是[x,y]。考虑一维数组可以表示行,列或完全不同的东西。三维数组不必表示三个空间维度。

我认为当二维数组表示网格时,对大多数用户使用索引的更直观的方法是[x,y]。