我有一个数组,我想知道每个数组的长度。
public int[][,] _EnemyPosition = new int[][,]
{
new int[,]{ {0},{1},{2},{3},{4}},
new int[,]{ {0,6},{1,7},{2,8},{3,9},{4,10}},
};
Debug.Log(_EnemyPosition.Length); // Output is 2
Debug.Log(_EnemyPosition[1].GetLength(0)); // Output is 5
但我无法得到
Debug.Log(_EnemyPosition[1][0].length);
它给我一个错误
error CS0022: Wrong number of indexes `1' inside [], expected `2'
我想知道如何获得此数组的长度
_EnemyPosition[1][0].length
最佳答案
var length = _EnemyPosition[0].Length; //returns 5 (5·1)
var length = _EnemyPosition[1].Length; //returns 10 (5·2)
那是你要的吗?您的要求还很不清楚:
我想知道如何获取此数组的长度:
_EnemyPosition[1][0].length
那不是一个数组,
_EnemyPostion[1]
是一个二维数组[,]
。请考虑以下模拟情况:int[,] myTwoDimensionalArray = ...
var whatever = myTwoDimensionalArray[0]; //not valid, array dimensiones don't match.
因此,在要返回的长度方面,我们有三个选择:
_EnemyPosition[1].Length
返回二维数组10
的总长度。_EnemyPosition[1].GetLength(0)
返回二维数组5
的第一维的长度_EnemyPosition[1].GetLength(1)
返回二维数组2
的第二维长度显然,
2
乘以3
的结果是1
。那么,您想要哪一个?关于c# - 如果将其用于锯齿阵列中,如何获得多维阵列的宽度和高度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41162202/