Autor
|
Tema: Problema de arrays (Leído 2,649 veces)
|
4dr14n31t0r
Desconectado
Mensajes: 85
|
¿Existe algun metodo equivalente a ... ? Arrays.asList(1,2,3,4,5,6,7,8,9,0).toArray() En otras palabras: ¿Conocen algun metodo que devuelva un array que contenga todos sus argumentos? Algo como esto: public static <T[]> funcionQueDevuelveArray(T... t){ return t; } Seria muy practico, asi que tendria que haberlo digo yo.
|
|
« Última modificación: 19 Enero 2016, 20:43 pm por 4dr14n31t0r »
|
En línea
|
|
|
|
0xFer
Desconectado
Mensajes: 400
|
Tu código ya lo hace muy bien; public int[] foo(int ... nums){ return nums; } int[] Arreglo = foo(5,4,4,2,4);
Vaya, es que no sé para qué querrías hacer eso
|
|
|
En línea
|
int getRandomNumber(){ return 4; //chosen by fair dice roll //guaranteed to be random }
|
|
|
crack81
Desconectado
Mensajes: 222
|
Exacto yo tampoco le veo sentido si lo que quieres es inicializar un arreglo pues basta que hagas esto int []arreglo={1,2,3,4,5};
|
|
|
En línea
|
Si C/C++ es el padre de los lenguajes entonces ASM es dios.
|
|
|
4dr14n31t0r
Desconectado
Mensajes: 85
|
Dices que para inicializar un arreglo puedes usar int[] i = {1,2,3,4,5,6,7,8,9,0}; Pero, ¿Te has fijado que, por ejemplo, si lo declaras e instancias en distintas lineas de ese modo te da error de compilación? De todos modos, que no sepas para que pueda servir algo no significa que no sea util. De momento solo quiero saberlo por curiosidad. Además,(y esto va para el tipo de mas arriba) ya se que puedo hacer un código tal que asi: //No se porque los ingleses le llaman "foo" a las funciones que usan de ejemplo //En los diccionarios de ingles tampoco encuentro nada =/ public <T[]> foo(T ... nums){ return nums; } int[] Arreglo = foo(5,4,4,2,4); Pero la pregunta es si YA EXISTE un metodo como ese implantado en java para no tener que crearlo una y otra vez cada vez que quiera darle uso
|
|
|
En línea
|
|
|
|
0xFer
Desconectado
Mensajes: 400
|
Nadie ha dicho que no sea útil, al menos yo no pretendía hacerlo, lo que quise decir es que no conozco cuál es la utilidad. Me gustaría conocerla, todo conocimiento viene bien. ¿Te has fijado que, por ejemplo, si lo declaras e instancias en distintas lineas de ese modo te da error de compilación? Se puede así: int[] Arreglo; Arreglo = new int[]{24,2,2};
y no veo mucha diferencia. Suerte.
|
|
« Última modificación: 19 Enero 2016, 21:00 pm por 0xFer »
|
En línea
|
int getRandomNumber(){ return 4; //chosen by fair dice roll //guaranteed to be random }
|
|
|
4dr14n31t0r
Desconectado
Mensajes: 85
|
¡OSTRAS! ¡PUES NO LO SABIA! Cuando lo intentaba en lineas diferentes hacia esto: int[] i; i = {1,2,3,4,5,6,7,8,9,0}//Error de compilación Ahora si entiendo porque preguntabas si tenia una utilidad =D Lo de la funcion era simplemente para hacer int[]{1,2,3,4,5,6,7,8,9,0} De la unica forma que se me ocurria, es decir, devolviendo el array de los argumentos de la funcion. ¿Por cierto, donde aprendiste eso? he visto muchos tutoriales en internet y en ninguno de ellos lo enseñan =/ De hecho, no sale ni en el tutorial oficial de Oracle: https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.htmlDe todos modos voy a dar este tema por zanjado, aunque todavia esta pendiente tu respuesta.
|
|
« Última modificación: 19 Enero 2016, 22:01 pm por 4dr14n31t0r »
|
En línea
|
|
|
|
0xFer
Desconectado
Mensajes: 400
|
int[] arreglo;
Con eso te creas una referencia a un arreglo, pero solo una referencia, es decir, puede estar apuntando a nada( una referencia nula) o puede estar apuntando a un arreglo. En el caso anterior es simplemente una referencia nula. con new puedes crear un objeto y hacer que una referencia apunte al objeto. Puedes crear tantos objetos quieras y hacer que la referencia apunte a ellos: int[] arreglo; arreglo = new int[] {3,4,1}; arreglo = new int[] {3,4,1,4,2,3}; arreglo = new int[] {3,4,1,4,2,3,4,2,4,2};
la referencia "arreglo" se queda con el último objeto creado, pero ¿Qué pasa con los objetos anteriores? Pues java tiene algo que se llama recolector de basura y te hace el favor de eliminar los objetos que ya no estas utilizando cuando le parezca conveniente, ¿y siempre lo hace? Pues por algo java consume mucha Memoria RAM, pero no tienes que estar preocupándote de eliminar los objetos. Esto solo es válido para los objetos, no es lo mismo con las variables primitivas int,char,float etc.. Ahora no sé si lo que escribí fue en vano, al menos creo que entenderás que un arreglo es una especie de objeto por si ya sabías el resto. Edito: El código que no sabías es sólo una forma diferente de hacer esto; // declares an array of integers int[] anArray; // allocates memory for 10 integers anArray = new int[10]; // initialize first element anArray[0] = 100; // initialize second element anArray[1] = 200; // and so forth anArray[2] = 300; anArray[3] = 400; anArray[4] = 500; anArray[5] = 600; anArray[6] = 700; anArray[7] = 800; anArray[8] = 900; anArray[9] = 1000;
Suerte.
|
|
« Última modificación: 19 Enero 2016, 22:21 pm por 0xFer »
|
En línea
|
int getRandomNumber(){ return 4; //chosen by fair dice roll //guaranteed to be random }
|
|
|
4dr14n31t0r
Desconectado
Mensajes: 85
|
Todo eso que me has dicho ya lo savia U,u El caso es que en cada tutorial que veia me hablaban de una forma de inicializar los arrays asi: int[] array = {1,2,3,4,5,6,7,8,9,0}; Sin embargo esta forma solo es valida cuando se inicializa al mismo tiempo que se declara. El caso es que nunca en mi vida vi algo como new int[]{1,2,3,4,5,6,7,8,9,0}; ya que lo mas parecido que vi era int[] array = {1,2,3,4,5,6,7,8,9,0}; Asi que te pregunto donde has visto eso porque en todos los tutoriales, incluso en el tutorial oficial de oracle, no sale algo como eso. Pero todo lo demas que dijiste ya lo sabia.
|
|
|
En línea
|
|
|
|
0xFer
Desconectado
Mensajes: 400
|
Yo lo descubrí. Me puse a buscar por Internet y encontré que otras personas lo utilizan( como era de esperar, claro): Usado en una linea Vaya, aquí lo usan muchas vecesSuerte.
|
|
|
En línea
|
int getRandomNumber(){ return 4; //chosen by fair dice roll //guaranteed to be random }
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Problema con arrays en C#
.NET (C#, VB.NET, ASP)
|
Edu
|
4
|
4,292
|
23 Noviembre 2010, 16:08 pm
por Edu
|
|
|
[C++] Problema con Arrays..
« 1 2 »
Programación C/C++
|
Wazzp
|
10
|
5,737
|
16 Enero 2011, 20:33 pm
por Wazzp
|
|
|
[C] Problema con Arrays.
Programación C/C++
|
edr89
|
6
|
3,281
|
27 Mayo 2013, 20:49 pm
por leosansan
|
|
|
Problema con Arrays
Java
|
alp
|
0
|
1,239
|
4 Mayo 2014, 02:02 am
por alp
|
|
|
Problema con Arrays en C (no C++)
Programación C/C++
|
santibarquero98
|
7
|
2,282
|
26 Mayo 2015, 23:41 pm
por Peregring-lk
|
|