C# 多维数组与交错数组长度法
为什么C# 多维数组与交错数组长度法,c#,C#,为什么[,]样式数组Length方法与[]]锯齿样式数组Length方法的不同之处在于,在锯齿数组中,Length方法返回最近秩的大小,如[,]样式数组Length方法不仅返回最接近秩的元素的总数(因此需要使用GetLength()方法。)锯齿数组([[]])数组,其中元素类型也是数组[],因此基本上只是一维数组 多维数组([,])是具有多个维度的数组,但所有元素都在同一数组中 Length属性来自MSDN: 获取数组所有维度中的元素总数 根据锯齿数组中的Length,此属性返回它包含的数组数
[,]
样式数组Length
方法与[]]
锯齿样式数组Length
方法的不同之处在于,在锯齿数组中,Length方法返回最近秩的大小,如[,]
样式数组Length
方法不仅返回最接近秩的元素的总数(因此需要使用GetLength()
方法。)锯齿数组([[]]
)数组,其中元素类型也是数组[]
,因此基本上只是一维数组
多维数组([,]
)是具有多个维度的数组,但所有元素都在同一数组中
Length
属性来自MSDN:
获取数组所有维度中的元素总数
根据锯齿数组中的Length
,此属性返回它包含的数组数
在多维数组中,此属性返回其中的所有元素,即所有维度大小的乘积
GetLength(int)
fromMSDN:
获取一个整数,该整数表示数组指定维度中的元素数
对于锯齿状数组使用此方法,唯一可用的维度是0
,它返回与Length
属性相同的值
在多维数组中,可以传递所需维度的从零开始的索引。例如,在
[,]
中,可用的维度是0
,1
和2
,@PatrickKostjens,我已经读过了,但我不明白具体长度方法的区别。我的意思是,为什么锯齿状数组中的length方法与“normal”数组中的length方法的结果不同。有什么原因吗?因为Length
返回数组中的元素数。在多维数组中,这自然是元素总数,因为有一个数组包含n个元素。锯齿数组实际上是数组的和数组,因此Length
返回数组的数目,因为something[x]
包含x个元素。something
是int
、string
还是somethingElse[]
应该没有区别。另一方面,something[x,y]
是一个包含x*y元素的对象。