gpt4 book ai didi

c# - array.GetLength(0) 和 array.GetUpperBound(0) 的区别

转载 作者:IT王子 更新时间:2023-10-29 04:33:04 34 4
gpt4 key购买 nike

这两种方法有什么区别,什么时候你会使用一种而不是另一种?

int[,] array = new int[4,3];
int length0 = array.GetLength(0);
int upperbound0 = array.GetUpperBound(0);

MSDN 说 GetLength 返回元素的数量,其中 GetUpperBound 确定最大索引,但是这有什么不同,因为数组是用每个索引的元素初始化的?

最佳答案

看看这个(很少使用的)方法。来自 Docs :

public static Array CreateInstance(Type elementType, int[] lengths, int[] lowerBounds)

Creates a multidimensional Array of the specified Type and dimension lengths, with the specified lower bounds.

使用它,您可以创建一个索引为 -5 ... +5 的数组。如果您曾经使用过这种数组,那么 GetUpperBound() 会突然变得比 GetLength()-1 更有用。还有一个 GetLowerBound()

但是C#对这种数组的支持很低,不能使用[]。您只需要将这些方法与 Array.GetValue() 和 SetValue() 方法结合使用。

关于c# - array.GetLength(0) 和 array.GetUpperBound(0) 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7202515/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com