Jak korzystać z funkcji Array.GetLength
w języku C#?Jaka jest różnica między Array.GetLength() i Array.Length?
Jaka jest różnica między usługą Length
a funkcją GetLength
?
Jak korzystać z funkcji Array.GetLength
w języku C#?Jaka jest różnica między Array.GetLength() i Array.Length?
Jaka jest różnica między usługą Length
a funkcją GetLength
?
GetLength
pobiera liczbę całkowitą, która określa wymiar tablicy, której dotyczy zapytanie, i zwraca jej długość. Length
właściwość zwraca całkowitą liczbę elementów w tablicy: tablice
int[,,] a = new int[10,11,12];
Console.WriteLine(a.Length); // 1320
Console.WriteLine(a.GetLength(0)); // 10
Console.WriteLine(a.GetLength(1)); // 11
Console.WriteLine(a.GetLength(2)); // 12
Dla 1-wymiarowe Length
i GetLength(0)
są dokładnie takie same.
Dla tablic wyższej rangi Length
to iloczyn wszystkich wartości GetLength(0..Rank-1)
, czyli zawsze jest to całkowita liczba pól.
int [] testArray = {1, 2, 3, 4} czy testArray.GetLength (1) jest poprawny? –
Nie. Powinien mieć wartość "testArray.GetLength (0)". –
divo, "poszarpane tablice" są tablicami tablic, na każdym poziomie rangi == 1. Nie są one wielowymiarowe w ten sam sposób. –
GetLength zwraca długość określonego wymiaru tablicy wielowymiarowej.
Długość zwraca sumę całkowitej liczby elementów we wszystkich wymiarach.
etc.
Nie do końca prawda: tablice dwuwymiarowe: długość = długość (GetLength) (0) * długość (1) –
To sprytna literówka! Jak udało mi się przetransponować + i *?! (naprawiony) –
W terminach matematycznych nazywamy je m wierszami i n kolumnami, więc wynikiem jest iloczyn m * n dla tablicy dwuwymiarowej. W tym przypadku kolumny: GetLength(0) = m
i kolumny . Na przykład patrz niżej przykład
string[,] stocks ={{"RELIND","Reliance Industries","1006.30"},{"TATMOB","Tata Mobiles","504.10"},{"ALST","Allstate","800.00"}, {"GE","GE Motors","810.00"}
};
Macierze zapasy powrócić GetLength(0)= 4
i GetLength(1)=3
i length =12
oraz na tablicach jednowymiarowych 'Length' powróci taką samą wartość jak' GetLength (0) '. –
Dlaczego a.GetLength (2) 11, a nie 12? –
@Mike: Przyczyna 1 i 2 są oddalone o jeden klucz. –