Design patterns
Patrón de iterador
Buscar..
El patrón iterador
Las colecciones son una de las estructuras de datos más utilizadas en ingeniería de software. Una Colección es solo un grupo de objetos. Una colección puede ser una Lista, una matriz, un mapa, un árbol o cualquier cosa. Por lo tanto, una colección debe proporcionar alguna forma de acceder a sus elementos sin exponer su estructura interna. Deberíamos poder recorrerlo de la misma manera, independientemente del tipo de colección que sea.
La idea del patrón de iterador es asumir la responsabilidad de acceder al objeto de una colección y colocarlo en un objeto iterador. El objeto iterador a cambio mantendrá el orden de iteración, mantendrá un seguimiento del elemento actual y deberá tener una forma de obtener el siguiente elemento.
Generalmente, la clase de colección lleva dos componentes: la clase en sí, y es Iterator
.
public interface Iterator {
public boolean hasNext();
public Object next();
}
public class FruitsList {
public String fruits[] = {"Banana", "Apple", "Pear", "Peach", "Blueberry"};
public Iterator getIterator() {
return new FruitIterator();
}
private class FruitIterator implements Iterator {
int index;
@Override
public boolean hasNext() {
return index < fruits.length;
}
@Override
public Object next() {
if(this.hasNext()) {
return names[index++];
}
return null;
}
}
}