Es un patrón de diseño utilizado para recorrer las colecciones. En java es una
interfaz denominada Iterator. Esta formado por 3 métodos:
ü boolean
hasNext(): retorna true en caso de haber mas elementos y false en caso de
llegar al final de iterator
ü Object
next(): retorna el siguiente elemento en la iteración
ü void
remove(): remueve el ultimo elemento devulto por la iteración
En las clases Vector, ArrayList, HashSet y TreeSet un
iterador se consigue a través del método: Iterator iterator(). Se utiliza de la siguiente manera:
List lasPersonas = new ArrayList();
lasPersonas.add(“Juan”);
lasPersonas.add(“Pepe”);
Iterator it =
lasPersonas.iterator();
While(it.hasNext){
String unaPersona = (String)
it.next();
}
En las clases HashMap y TreeMap se utiliza de la siguiente manera:
En las clases HashMap y TreeMap se utiliza de la siguiente manera:
SortedMap sm=new TreeMap();
sm.put(3, "Intruccion");
sm.put(2, 5);
Iterator iterator = sm.entrySet().iterator();
while (iterator.hasNext()) {
Object claveValor = iterator.next();
System.out.println("Clave = Valor : "+claveValor;
}
sm.put(3, "Intruccion");
sm.put(2, 5);
Iterator iterator = sm.entrySet().iterator();
while (iterator.hasNext()) {
Object claveValor = iterator.next();
System.out.println("Clave = Valor : "+claveValor;
}
buen aporte, gracias. Pero como se lían estos de java para recorrer un simple array. Se hacen copia y montan películas espectaculares jajaja. Se que es para trabajar con una copia pero tela...
ResponderEliminarUNA CONSULTA, EL ITERADOR CONSUME ES LINEAL O CONSTANTE
ResponderEliminarmetodo iterator() y listIterator() para que sirven?
ResponderEliminaramigo te dejo mas informacion en este link:
Eliminarhttps://www.google.com/search?safe=active&sxsrf=ACYBGNTYW7IJ-L12wZnHcqGhWUSOy_TCAg%3A1580340512467&source=hp&ei=IBUyXtqZGsLl_Qbnp7WoCg&q=metodo+iterator%28%29+y+listIterator%28%29+para+que+sirven%3F&oq=metodo+iterator%28%29+y+listIterator%28%29+para+que+sirven%3F&gs_l=psy-ab.3..33i160.590.590..974...1.0..0.209.209.2-1......0....2j1..gws-wiz.gm17Nirjko8&ved=0ahUKEwjaqfiW-6nnAhXCct8KHedTDaUQ4dUDCAY&uact=5