2010-01-11 5 views

Antwort

56

GetLength verwendet eine Ganzzahl, die die Dimension des abzufragenden Arrays angibt und die Länge zurückgibt. Length Eigenschaft gibt die Gesamtzahl der Elemente in einem Array:

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 
+12

Und auf eindimensionale Arrays 'Length' den gleichen Wert wie' GetLength (0) zurückgeben '. –

+1

Warum ist a.GetLength (2) 11 und nicht 12? –

+4

@Mike: Ursache 1 und 2 sind eine einzelne Taste entfernt. –

12

Für 1-dimensionalen Arrays LengthGetLength(0) und ist genau die gleiche.

Für Arrays mit höherem Rang Length ist das Produkt aller GetLength(0..Rank-1) Werte, mit anderen Worten ist es immer die Gesamtzahl der Felder.

+0

int [] testArray = {1, 2, 3, 4} ist testArray.GetLength (1) korrekt? –

+0

Nein. Sollte 'testArray.GetLength (0)' sein. –

+1

divo, "gezackte Arrays" sind Arrays von Arrays, auf jeder Ebene Rang == 1. Sie sind nicht auf die gleiche Weise mehrdimensional. –

3

GetLength gibt die Länge einer angegebenen Dimension eines mehrdimensionalen Arrays zurück.

Länge gibt die Summe der Gesamtzahl der Elemente in allen Dimensionen zurück.

  • Für ein eindimensionales Array, Länge == GetLength (0)
  • Für ein zweidimensionales Array, Länge == GetLength (0) * GetLength (1)

usw.

+1

Nicht ganz richtig: Zweidimensionale Arrays: Länge = GetLength (0) * GetLength (1) –

+1

Das ist ein schlauer Tippfehler! Wie konnte ich + und * umsetzen? (Fest) –

0

In mathematischen Begriffen bezeichnen wir m Zeilen und n Spalten, also ist das Ergebnis ein Produkt von m * n für ein zweidimensionales Array. In diesem Fall GetLength(0) = m Zeilen und GetLength(1)= n Spalten. Für beispiels unter Beispiel siehe

string[,] stocks ={{"RELIND","Reliance Industries","1006.30"},{"TATMOB","Tata Mobiles","504.10"},{"ALST","Allstate","800.00"}, {"GE","GE Motors","810.00"} 
}; 

Die Bestände Arrays zurückgeben GetLength(0)= 4 und GetLength(1)=3 und length =12

Verwandte Themen