¿Cómo puedo determinar el tamaño (longitud/número de objetos) en una matriz en C#?Tamaño de matriz (longitud) en C#
Respuesta
yourArray.Length
:)
Con la propiedad Length
.
int[] foo = new int[10];
int n = foo.Length; // n == 10
Muchas gracias – Amal
Si es una matriz unidimensional a
,
a.Length
dará el número de elementos de a
.
Si b
es una matriz multi-dimensional rectangular (por ejemplo, int[,] b = new int[3, 5];
)
b.Rank
dará el número de dimensiones (2) y
b.GetLength(dimensionIndex)
obtendrá la longitud de cualquier dado dimensión (indexación basada en 0 para las dimensiones, por lo que b.GetLength(0)
es 3 y b.GetLength(1)
es 5).
Consulte System.Array documentation para obtener más información.
Como señala @Lucero en los comentarios, existe el concepto de una "matriz dentada", que en realidad no es más que una matriz unidimensional de matrices (típicamente unidimensionales).
Por ejemplo, uno podría tener la siguiente:
int[][] c = new int[3][];
c[0] = new int[] {1, 2, 3};
c[1] = new int[] {3, 14};
c[2] = new int[] {1, 1, 2, 3, 5, 8, 13};
Tenga en cuenta que los 3 miembros de c
todos tienen diferentes longitudes. En este caso, como antes, c.Length
indicará el número de elementos de c
, (3) y c[0].Length
, c[1].Length
y c[2].Length
serán 3, 2 y 7, respectivamente.
Para completar, también podría haber enumerado la forma en que funcionan las matrices dentadas (por ejemplo, 'int [] []') ;-) – Lucero
Lo consideré, @Lucerno, pero pensé que era un problema diferente: calcular el tamaño de cosas _inside_ una matriz - una matriz dentada es realmente una matriz de una sola dimensión que contiene matrices de dimensión simple, como estoy seguro que sabes. –
, por supuesto, sé que tienes razón y es por eso que agregué el comentario con una sonrisa en lugar de escribir una respuesta yo mismo. Sin embargo, la distinción entre '[,]' y '[] []' no parece estar clara para todos los novatos .NET, por lo que aún vale la pena señalar que '[] []' no es una matriz multidimensional en su sentido de las respuestas. – Lucero
Puede encontrar la respuesta a esta pregunta en documentation for Array.
En este caso particular, es probable que tenga Length:
int sizeOfArray = array.Length;
Pero como esto es una pregunta tan básica y que sin duda, tienen muchos más como este, en lugar de simplemente diciendo que la respuesta que más bien diría usted cómo encontrar la respuesta usted mismo.
Visual Studio IntelliSense
Al escribir el nombre de una variable y presiona la tecla .
se muestra una lista de todos los métodos, propiedades, eventos, etc. disponibles en ese objeto. Cuando resaltas un miembro, te da una breve descripción de lo que hace.
Pulse F1
Si encuentra un método o propiedad que puedan hacer lo que quiera, pero no está seguro, puede mover el cursor sobre él y pulse F1 para obtener ayuda . Aquí obtienes una descripción mucho más detallada más enlaces a información relacionada.
Buscar
los términos de búsqueda size of array in C#
da muchos enlaces que le dice la respuesta a su pregunta y mucho más. Una de las habilidades más importantes que un programador debe aprender es cómo encontrar información. A menudo es más rápido encontrar la respuesta usted mismo, especialmente si se ha formulado la misma pregunta antes.
Utilice un tutorial
Si usted está recién empezando a aprender C# le resultará más fácil seguir un tutorial. Puedo recomendar el C# tutorials en MSDN. Si quieres un libro, te recomiendo Essential C#.
desbordamiento de pila
Si usted no es capaz de encontrar la respuesta por su cuenta, por favor no dude en enviar la pregunta sobre desbordamiento de pila. Pero apreciamos que demuestres que has hecho el esfuerzo de encontrar primero la respuesta tú mismo.
¡Buen trabajo, Mark, pero puede ser una exageración! – Nayan
@Nayan: ¡Gracias! Si bien es genial que el OP recibió rápidamente su respuesta de otros carteles, creo que es más importante enseñar a los principiantes cómo encontrar información en lugar de enseñarles respuestas a preguntas específicas. Espero que OP encuentre útil esta respuesta y que les ahorre tener que hacer cientos de preguntas para poder encontrar las respuestas. –
+1 por tomarse el tiempo para adoptar este enfoque: "darle a un hombre un pescado ...", etc. –
Para una única matriz de dimensión, se utiliza la propiedad Length
:
int size = theArray.Length;
Para múltiples matrices de dimensión Length
la propiedad devuelve el número total de elementos de la matriz. Usted puede utilizar el método GetLength
para obtener el tamaño de una de las dimensiones:
int size0 = theArray.GetLength(0);
durante 1 arreglo unidimensional
int[] listItems = new int[] {2,4,8};
int length = listItems.Length;
de matriz multidimensional
int length = listItems.Rank;
Para obtener el tamaño de 1 dimensión
int length = listItems.GetLength(0);
La propiedad 'Rank' no devuelve el número de elementos, devuelve el número de dimensiones. – Guffa
dice así: 1D:
type[] name=new type[size] //or =new type[]{.....elements...}
2D:
type[][]name=new type[size][] //second brackets are emtpy
entonces como se utiliza esta matriz:
name[i]=new type[size_of_sec.Dim]
o Se puede declarar algo así como una matriz
type[ , ] name=new type [size1,size2]
En la mayoría de los casos generales se usan "Longitud" y "Recuento".
Matriz:
int[] myArray = new int[size];
int noOfElements = myArray.Length;
lista con tipo de matriz:
List <int> myArray = new List<int>();
int noOfElements = myArray.Count;
- 1. Matriz de una longitud desconocida en C#
- 2. Encontrar la longitud (tamaño) de una matriz en jquery
- 3. C++ administrado tamaño de la matriz
- 4. C tamaño de matriz mediante gdb
- 5. C Tamaño de la matriz
- 6. ¿Hay algún atajo para el tamaño/longitud de la matriz en C?
- 7. ¿Sobrecarga de la matriz de longitud variable en C++?
- 8. Matriz de longitud cero
- 9. longitud de la matriz en Java
- 10. Crear matriz de objetos C# de longitud indefinida?
- 11. Divide matriz en fragmentos de N longitud
- 12. Inicialización matriz de tamaño variable en Java
- 13. Cómo configurar la longitud de la matriz en C# dinámicamente
- 14. Longitud de una matriz en el objetivo C
- 15. C buscar tamaño de matriz estática
- 16. C++ tamaño dinámico de la matriz
- 17. matriz JSON obtener longitud
- 18. Inicializar matriz numpy de longitud desconocida
- 19. ¿Cómo obtener la longitud de la matriz del puntero C?
- 20. ¿Matriz de longitud desconocida en MATLAB?
- 21. ¿Cómo obtener la longitud de una matriz de estructuras creadas dinámicamente en C?
- 22. Cuenta, tamaño, longitud ... ¿muchas opciones en Ruby?
- 23. Diferencias matriz de tamaño Declaración para C y C++
- 24. Declaración de una matriz de longitud negativa
- 25. Obtener longitud de matriz de cadenas de longitud desconocida
- 26. Encontrar programáticamente el tamaño máximo de matriz estática en C++
- 27. ¿Cómo declarar una matriz 2D de tamaño variable en C?
- 28. ¿Cómo hacer una matriz de tamaño dinámico en C?
- 29. cómo encontrar el tamaño de la matriz 2d en C++
- 30. ¿Devuelve una matriz de un tamaño conocido en C++?
@Marcelo: ... pero todavía no puede responder a preguntas muy sencillas como "¿Dónde están mis gafas". ;) – Guffa
¿Qué quiere decir con "tamaño"? ¿La cantidad de elementos o el tamaño en bytes? –
No puedo creer que las personas realmente voten por alto este tipo de preguntas. – fearofawhackplanet