Comment obtenir la longueur d'une ligne ou d'une colonne d'un tableau multidimensionnel en C #?
par exemple:
int[,] matrix = new int[2,3];
matrix.rowLength = 2;
matrix.colLength = 3;
matrix.GetLength(0) -> Gets the first dimension size
matrix.GetLength(1) -> Gets the second dimension size
Avez-vous examiné les propriétés d'un Array
?
Length
vous donne la longueur du tableau (nombre total de cellules).GetLength(n)
vous donne le nombre de cellules dans la dimension spécifiée (par rapport à 0). Si vous avez un tableau en 3 dimensions:
int[,,] multiDimensionalArray = new int[21,72,103] ;
alors multiDimensionalArray.GetLength(n)
renverra, pour n = 0, 1 et 2, respectivement 21, 72 et 103.
Si vous construisez des tableaux Jagged/clairsemés, le problème est un peu plus compliqué. Les tableaux irréguliers/clairsemés sont [généralement] construits comme une collection imbriquée de tableaux dans les tableaux. Dans ce cas, vous devez examiner chaque élément tour à tour. Ce sont généralement des tableaux unidimensionnels imbriqués, mais il n'y a aucune raison pour laquelle vous ne pourriez pas avoir, disons, un tableau 2d contenant des tableaux 3d contenant des tableaux 5d.
Dans tous les cas, avec une structure irrégulière/clairsemée, vous devez utiliser les propriétés de longueur sur chaque cellule.
Utilisez matrix.GetLowerBound(0)
et matrix.GetUpperBound(0)
.