Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

array multi dimensional declaracionenros

Iniciado por ignacio, Enero 04, 2016, 05:49:17 AM

Tema anterior - Siguiente tema
hola gente.tengo una pregunta ¿ como se puede declarar un array multidimensional de por ejemplo objetos o bien números enteros? gracias

public var multiDimensionalArray = [
[0,1,1,0],
[1,0,0,1],
[1,0,0,1],
[0,1,1,0]
];
Un saludo.

aqui el compañero te ha mostrado como declarar y inicializar un array multidimensional en una sola linea ... lo que te puede complicar el manejo en el caso de que sea un array un poco extenso, contenga elementos que no sean de tipo primario como numeros o letras (cadenas de texto no son de tipo primario), o sea un array de mas dos dimensiones.para declarar un array multidimensional sin complicarte la vida es tan facil como utilizar corchetes, incluyendo tantos como dimensiones quieras en tu array. Ejemplo:public string cadenas [ ][ ] = new string [5][3]; --> array de dos dimensiones que contiene hasta 15 strings (5x3)public GameObject gameObjects [ ][ ][ ] = new GameObject [2][8][10]; --> array de tres dimensiones que contiene hasta 160 gameobjects (2x8x10)public object objetos [ ][ ][ ][ ] = new object [5][6][2][4]; --> array de cuatro dimensiones que puede contener hasta 240 objetos de cualquier tipo 

Enero 04, 2016, 02:54:23 PM #3 Ultima modificación: Enero 04, 2016, 02:56:05 PM por Quel
Ojo que no confundas los términos. Lo que comenta http://unityspain.com/profile/26665-arthure/?do=hovercard" data-mentionid="26665" href="<___base_url___>/profile/26665-arthure/">@Arthure es una array de arrays. Propiamente dicho no es una array multi-dimensional. Aquí te dejo un enlace que lo explica bastante bien. Porque cada una tiene sus puntos buenos y sus puntos malos.http://stackoverflow.com/questions/597720/what-are-the-differences-between-a-multidimensional-array-and-an-array-of-arrays">http://stackoverflow.com/questions/597720/what-are-the-differences-between-a-multidimensional-array-and-an-array-of-arraysArray de arrays: Es una array que contiene elementos que son otras arrays que contienen mas elementos,
int[][][] array

array[X][Y][z] = valor;
Array multi-dimensional: Es una array que contiene elementos, pero sus indices vienen dados por dos o mas coordenadas.
int[,,] array

array[X,Y,Z] = valor;

Cita de: Quel date=1451915663" data-ipsquote="" data-cite="Quel" class="ipsQuote">Ojo que no confundas los términos. Lo que comenta @Arthure es una array de arrays. Propiamente dicho no es una array multi-dimensional. Aquí te dejo un enlace que lo explica bastante bien. Porque cada una tiene sus puntos buenos y sus puntos malos.http://stackoverflow.com/questions/597720/what-are-the-differences-between-a-multidimensional-array-and-an-array-of-arrays">http://stackoverflow.com/questions/597720/what-are-the-differences-between-a-multidimensional-array-and-an-array-of-arrays
Pues tienes toda la razon. nunca habia caido, siendo sincero siempre he pensado que eran lo mismo xDDDD ahora veo que a uno se le llama array de arrays y al otro array multidimensional ... aunque despues de ver el enlace que pones tampoco me queda clara ninguna diferencia exceptuando que el array de arrays es mas rapido (muy bueno el ejemplo de las estanterias para intentar aclarar esa diferencia) aunque nunca he encontrado que uno sea mas rapido que el otro, imagino que sera cuando contienen miles de objetos :SAnte la duda, me he dirigido a la pagina de msdn (referencia que habria de tener siempre a mano a la hora de programar) y tampoco dan una sola diferencia entre ambos casos exceptuando el nombre ... no hacen referencia ni a la diferencia de velocidad entre uno y el otro.array de arrays" utilices contenedor [][] y si te gusta mas el nombre "array multidimensional" utilices contenedor [,] ... porque en ambos casos funcionan y se utilizan exactamente para lo mismo, con la diferencia de que en un caso se indican las posiciones del elemento deseado en distintos corchetes y en el otro caso van todas dentro del mismo corchete separadas por comas xDDD

Enero 04, 2016, 06:53:52 PM #5 Ultima modificación: Enero 04, 2016, 06:54:40 PM por Quel
Personalmente creo que la array multidimensional es mas intuitiva, mientras que la jagged arrays(array de arrays) es mas práctica en segun que situaciones. Por ejemplo puedes tener una estantería con una fila de 5 elementos, otra de 10 y una tercera fila de solo 1 elemento. Además de que permite hacer operaciónes entre filas con mayor comodidad.Al final se queda en una cuestión de gustos, pero lo importante es tener los conceptos claros.

muchas gracias, ya lo he leído todo muy bueno

Siempre opte por los arreglos simples (1D) utilizados como si estuviéramos gestionando un Árbol binario, también deberías mirarlos son de gran ayuda y un poco mas óptimos.

Etiquetas: