uoc.ei.tads
Class TablaDispersion.RecorridoNodos<C,E>

java.lang.Object
  extended by uoc.ei.tads.TablaDispersion.RecorridoNodos<C,E>
All Implemented Interfaces:
java.io.Serializable, Recorrido<ClaveValor<C,E>>
Enclosing class:
TablaDispersion<C,E>

protected static class TablaDispersion.RecorridoNodos<C,E>
extends java.lang.Object
implements Recorrido<ClaveValor<C,E>>

Clase que proporciona un recorrido de las posiciones. Basada en el pattern Iterator, soporta múltiples recorridos simultáneos y independientes del contenedor. Es sensible a eventuales alteraciones de la estructura de posiciones.

See Also:
Recorrido.haySiguiente(), Recorrido.siguiente(), Serialized Form

Field Summary
protected  int i
          Índice de la tabla.
protected  Recorrido<ClaveValor<C,E>> recorridoSinonimos
          Recorrido auxiliar.
protected  TablaDispersion<C,E> tablaDispersion
          Tabla de dispersión que se está recorriendo.
 
Constructor Summary
TablaDispersion.RecorridoNodos(TablaDispersion<C,E> td)
           
 
Method Summary
 boolean haySiguiente()
          Comprueba si hay una primera o siguiente posición.
 Posicion<ClaveValor<C,E>> siguiente()
          Primero avanza, si se puede, y después retorna la posición.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

tablaDispersion

protected TablaDispersion<C,E> tablaDispersion
Tabla de dispersión que se está recorriendo.


recorridoSinonimos

protected Recorrido<ClaveValor<C,E>> recorridoSinonimos
Recorrido auxiliar.


i

protected int i
Índice de la tabla.

Constructor Detail

TablaDispersion.RecorridoNodos

public TablaDispersion.RecorridoNodos(TablaDispersion<C,E> td)
Method Detail

haySiguiente

public boolean haySiguiente()
Comprueba si hay una primera o siguiente posición. Es sensible a eventuales alteraciones de la estructura de posiciones. Retorna falso si el contenedor está vacío o ya se ha visitado la última posición.

Specified by:
haySiguiente in interface Recorrido<ClaveValor<C,E>>
Returns:
cierto o falso, según si se puede avanzar o no se puede

siguiente

public Posicion<ClaveValor<C,E>> siguiente()
Primero avanza, si se puede, y después retorna la posición. Si no hay siguiente posición lanza una excepción.

Specified by:
siguiente in interface Recorrido<ClaveValor<C,E>>
Returns:
siguiente posición