Cor*_*ius 22 c# arrays multidimensional-array
这两种方法有什么区别,你何时使用一种而不是另一种?
int[,] array = new int[4,3];
int length0 = array.GetLength(0);
int upperbound0 = array.GetUpperBound(0);
Run Code Online (Sandbox Code Playgroud)
MSDN说GetLength返回GetUpperBound确定最大索引的元素数量,但是由于数组是用每个索引的元素初始化的,所以这有什么不同呢?
Hen*_*man 37
看看这个(很少使用的)方法.来自Docs:
public static Array CreateInstance(Type elementType, int[] lengths, int[] lowerBounds)创建具有指定下限的指定类型和尺寸长度的多维数组.
有了它,您可以创建一个索引来自的数组-5 ... +5.如果你曾经使用过这种阵列,那么GetUpperBound()突然变得非常有用GetLength()-1.还有一个GetLowerBound().
但是对于这种阵列的C#支持很低,你无法使用[].您只需要将这些方法与Array.GetValue()和SetValue()方法结合使用.