Mam zdefiniowaną tablicę:
int [,] ary;
// ...
int nArea = ary.Length; // x*y or total area
To wszystko dobrze i dobrze, ale muszę wiedzieć, jak szeroki jest ten zestaw w wymiarach x
i y
indywidualnie. Mianowicie, ary.Length
może zwrócić 12 - ale czy to oznacza, że tablica ma 4 wysokości i 3 szerokości, czy 6 wysokości i 2 szerokości?
Jak mogę odzyskać te informacje?
c#
.net
arrays
multidimensional-array
Giffyguy
źródło
źródło
Odpowiedzi:
Używasz Array.GetLength z indeksem wymiaru, który chcesz pobrać.
źródło
.Rank
dla liczby wymiarów. W tym przypadku jest to 2.GetLength(0)
dla liczby wierszy,.GetLength(1)
dla liczby kolumn.Użyj GetLength () zamiast Length.
źródło
źródło
W niektórych innych postach nie ma pewności, który wymiar jest który. Oto test NUNIT, który pokazuje, jak działają tablice 2D w języku C #
źródło
dla dwuwymiarowej tablicy
źródło
Możesz również rozważyć pobranie indeksów ostatnich elementów w każdym określonym wymiarze, używając tego w następujący sposób;
Należy pamiętać, że w ten sposób wartość indeksu jest oparta na 0.
źródło