2010-01-11 29 views

Respuesta

56

GetLength toma un número entero que especifica la dimensión de la matriz que está consultando y devuelve su longitud. Length propiedad devuelve el número total de elementos en una matriz: arrays

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

Y en matrices unidimensionales 'Length' devolverá el mismo valor que' GetLength (0) '. –

+1

¿Por qué a.GetLength (2) 11 y no 12? –

+4

@Mike: Causa 1 y 2 están a una sola distancia. –

12

Para 1-dimensionales Length y GetLength(0) son exactamente los mismos.

Para matrices de mayor rango Length es el producto de todos GetLength(0..Rank-1) valores, en otras palabras, siempre es el número total de campos.

+0

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

+0

No. Debe ser 'testArray.GetLength (0)'. –

+1

divo, "matrices dentadas" son matrices de matrices, en cada rango de nivel == 1. No son multidimensionales de la misma manera. –

3

GetLength devuelve la longitud de una dimensión especificada de una matriz multidimensional.

Longitud devuelve la suma de la cantidad total de elementos en todas las dimensiones.

  • Para una sola dimensional array, Longitud == GetLength (0)
  • Para una matriz de dos dimensiones, Longitud == GetLength (0) * GetLength (1)

etc.

+1

No del todo cierto: dos matrices dimensionales: Length = GetLength (0) * GetLength (1) –

+1

¡Es un error tipográfico inteligente! ¿Cómo logré transponer + y *?! (fijo) –

0

En términos matemáticos, llamamos m filas y n columnas, por lo que los resultados son producto de m * n para una matriz bidimensional. En este caso, GetLength(0) = m filas y GetLength(1)= n columnas. Para por ejemplo ver más abajo ejemplo

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

Los arrays rentabilidad de las acciones GetLength(0)= 4 y GetLength(1)=3 y length =12

Cuestiones relacionadas