Como uso el ListIterator
buenas tengo un pequeño problema, tengo una lista de elementos de una determinada clase es decir
LinkedList canales = new LinkedList();
a la cual le añado elementos de la clase class Canal
Luego cuando kiero recorrer la lista me creo un iterador, y
quiero acceder a un elemento de la clase Canal al cual apunta el iterador en concreto el nombre, hago esto pero me da error:
while((iter.hasNext())|| enc == false)
{
if (((iter.getNombre()).compareTo(nombre)) == 0)
{
enc = true;
}
iter = iter.next();
}
Alguin me puede ayudar, Gracias
LinkedList canales = new LinkedList();
a la cual le añado elementos de la clase class Canal
Luego cuando kiero recorrer la lista me creo un iterador, y
quiero acceder a un elemento de la clase Canal al cual apunta el iterador en concreto el nombre, hago esto pero me da error:
while((iter.hasNext())|| enc == false)
{
if (((iter.getNombre()).compareTo(nombre)) == 0)
{
enc = true;
}
iter = iter.next();
}
Alguin me puede ayudar, Gracias
Hola,...
Miguel tiene razón,... De todas formas, incluso realizando el casting, me temo que el código que has planteado no funcionará...
LinkedList canales = new LinkedList();
Iterator iter = canales.iterator();
// Mejor usar esta forma. La ejecución es más rápida
while(iter.hasNext()){
// Antes de comparar hay que acceder al objeto...
// Aún empezado a recorrer la lista con el iterador
Canal c = (Canal)iter.next();
// Ahora tenemos el primer objeto y en cada iteración
// obtendremos el siguiente objeto de la lista
// Suponiendo que c.getNombre() devuelve un String
if(c.getNombre().equals(nombre)){
enc = true; // Por si la usas en otro sitio
break;
}
}
}
Espero que te sirva...
Miguel tiene razón,... De todas formas, incluso realizando el casting, me temo que el código que has planteado no funcionará...
LinkedList canales = new LinkedList();
Iterator iter = canales.iterator();
// Mejor usar esta forma. La ejecución es más rápida
while(iter.hasNext()){
// Antes de comparar hay que acceder al objeto...
// Aún empezado a recorrer la lista con el iterador
Canal c = (Canal)iter.next();
// Ahora tenemos el primer objeto y en cada iteración
// obtendremos el siguiente objeto de la lista
// Suponiendo que c.getNombre() devuelve un String
if(c.getNombre().equals(nombre)){
enc = true; // Por si la usas en otro sitio
break;
}
}
}
Espero que te sirva...