Foros del Web » Programación para mayores de 30 ;) » Java »

for each extendido en java puedo usar this

Estas en el tema de for each extendido en java puedo usar this en el foro de Java en Foros del Web. Hola miren recien estoy aprendiendo java, y nada, estoy en la parte donde se recorre, con for , ese que es extendido... y tengo un ...
  #1 (permalink)  
Antiguo 09/04/2014, 10:02
 
Fecha de Ingreso: febrero-2013
Ubicación: en mi casa
Mensajes: 541
Antigüedad: 11 años, 1 mes
Puntos: 3
for each extendido en java puedo usar this

Hola miren recien estoy aprendiendo java,
y nada, estoy en la parte donde se recorre, con for , ese que es extendido...
y tengo un ejemplo que dice algo asi...


Código Java:
Ver original
  1. public void listarTodosLosNombres () {
  2.  
  3.         for (String i: listaDeNombres) {
  4.  
  5.         System.out.println (i); //Muestra cada uno de los nombres dentro de listaDeNombres
  6.  
  7.     }
  8.  
  9.   }


listadeNombres , vendria a ser el arraylist de strings..

bueno que pasa cuando tengo una clase, que internamente, usas metodos de Arraylist.. por que esto no me anda...

Código Java:
Ver original
  1. for(String u:this){
  2.             System.out.println("Usando el for extendido ");
  3.         }


dice algo como esto..

Cita:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Can only iterate over an array or an instance of java.lang.Iterable
osea no hay mucha ciencia, ya que en el ejemplo de los parametros.
del uso del for extendido debo colocar.el ArrayList,
aca lo quiero usar como this..

pero nada.
  #2 (permalink)  
Antiguo 09/04/2014, 10:09
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 14 años, 11 meses
Puntos: 306
Respuesta: for each extendido en java puedo usar this

No, a menos que tu this pertenezca a una clase que implemente la interface Iterable.

http://mundogeek.net/archivos/2009/0...-each-en-java/
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #3 (permalink)  
Antiguo 09/04/2014, 10:31
 
Fecha de Ingreso: febrero-2013
Ubicación: en mi casa
Mensajes: 541
Antigüedad: 11 años, 1 mes
Puntos: 3
Respuesta: for each extendido en java puedo usar this

como implemente la interface iterable...mira por ejemplo en la misma clase..

tengo esto



Código Java:
Ver original
  1. public String cual(int ind){
  2.        
  3.         return listado.get(ind);
  4.     }


donde internamente en otros metodos puedo llamar a this.cual(1);

osea hago referencia al objeto arraylist con "this"


entonces en este caso NO SE PUEDE HACER; ES RARO.

-------------------------

a lo sumo tendria que crear una clase -metodo, estatico, donde reciba, el arraylist, y lo recorra, para hacer metodo dinamico....
  #4 (permalink)  
Antiguo 09/04/2014, 12:46
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 14 años, 11 meses
Puntos: 306
Respuesta: for each extendido en java puedo usar this

Cita:
donde internamente en otros metodos puedo llamar a this.cual(1);

osea hago referencia al objeto arraylist con "this"


entonces en este caso NO SE PUEDE HACER; ES RARO.
No entiendes lo que es "this"

http://aprendiendojava.blogspot.com....s-y-super.html
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #5 (permalink)  
Antiguo 09/04/2014, 14:03
 
Fecha de Ingreso: febrero-2013
Ubicación: en mi casa
Mensajes: 541
Antigüedad: 11 años, 1 mes
Puntos: 3
Respuesta: for each extendido en java puedo usar this

che en el ejemplo de la pagina que me diste, tiene esto


Código Java:
Ver original
  1. class RGB {
  2.   int red, green, blue;
  3.  
  4.   RGB(int red, int green, int blue) {
  5.    this.red = red;
  6.    this.green = green;
  7.    this.blue = blue;
  8.   }
  9. }

yo pense que no se podia asignar parametros predefinidos como argumentos,

Última edición por aldo_rengo; 09/04/2014 a las 14:31
  #6 (permalink)  
Antiguo 10/04/2014, 04:17
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 14 años, 11 meses
Puntos: 306
Respuesta: for each extendido en java puedo usar this

¿De qué parámetros predefinidos hablas?

Eso es un constructor normal y corriente al que se le pasan 3 int.

Creo que no entiendes cómo se usa el this y te despista.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #7 (permalink)  
Antiguo 21/04/2014, 07:34
 
Fecha de Ingreso: febrero-2013
Ubicación: en mi casa
Mensajes: 541
Antigüedad: 11 años, 1 mes
Puntos: 3
Respuesta: for each extendido en java puedo usar this

Cita:
Iniciado por Xerelo Ver Mensaje
¿De qué parámetros predefinidos hablas?

Eso es un constructor normal y corriente al que se le pasan 3 int.

Creo que no entiendes cómo se usa el this y te despista.

digo lo que sucede en este caso ...

Código Java:
Ver original
  1. RGB(int red, int green, int blue) {
  2.    this.red = red;
  3.    this.green = green;
  4.    this.blue = blue;
  5.   }

osea al constructor me di cuenta que no hace falta agregarle "function"

ah y a lo de parametros predefinidos me equivoque con que sucedia esto...

Código Java:
Ver original
  1. RGB(int red=554, int green=22, int blue=635) {
  2.  
  3.  
  4.   }

parametro predefinido es en la misma linea donde estan los argumentos....
declara y define los parametros pero creo que eso ya no se puede...


Y lo de this... voy a suponer que
que lo ideal es pasar el arraylist como parametro.
ya que ahi si creo que voy a poder manejar el arraylist. por fuera.
desde una clase generalizada... -donde instancio arraylist,-
  #8 (permalink)  
Antiguo 21/04/2014, 07:56
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 14 años, 11 meses
Puntos: 306
Respuesta: for each extendido en java puedo usar this

Cita:
osea al constructor me di cuenta que no hace falta agregarle "function"
Lo extraño del asunto es que te dieras cuenta de que no hace falta usar function, cuando function no es siquiera una palabra reservada de java. Tu conclusión es igual de válida que

Cita:
osea al constructor me di cuenta que no hace falta agregarle "guantanamera"
Tu problema es que o no lees o no intentas comprender lo que lees, y así no avanzarás nada, a los hechos me remito.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #9 (permalink)  
Antiguo 21/04/2014, 12:20
 
Fecha de Ingreso: febrero-2013
Ubicación: en mi casa
Mensajes: 541
Antigüedad: 11 años, 1 mes
Puntos: 3
Respuesta: for each extendido en java puedo usar this

Cita:
Iniciado por Xerelo Ver Mensaje
Lo extraño del asunto es que te dieras cuenta de que no hace falta usar function, cuando function no es siquiera una palabra reservada de java. Tu conclusión es igual de válida que



Tu problema es que o no lees o no intentas comprender lo que lees, y así no avanzarás nada, a los hechos me remito.
ah decir verdad..
nada lleva la palabra "function" ...

solo que el constructor, no tiene public ni nada...
esta escrito con el nombre solo.

pero bueno.... creo que habia constructores privados,
eso de void, es porque los constructores no devuelven nada... en ningun momento.
disculpen,


________________

ah y soy un tonto, no me di cuenta, que mi duda , del primer posteo, era que ese this.
hacia referencia a una clase, que DENTRO contiene el arraylist, y sus metodos,,,
entonces ese this, apuntaba a una clase cuando queria usar el for extendido...

el arraylist se llama listado...

Código Java:
Ver original
  1. for(String u:this.listado){
  2.             System.out.println("Usando el for extendido "+u);
  3.         }

DE ESTA MANERA SI FUNCIONA "

Última edición por aldo_rengo; 21/04/2014 a las 14:00

Etiquetas: clase, metodo, string, usar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:35.