lab2
Class LinkedList.ProtectedItr

java.lang.Object
  |
  +--lab2.LinkedList.ProtectedItr
All Implemented Interfaces:
Iterator
Enclosing class:
LinkedList

protected class LinkedList.ProtectedItr
extends java.lang.Object
implements Iterator


Field Summary
protected  ListNode cursor
           
protected  int expectedModCount
           
protected  ListNode precursor
           
 
Constructor Summary
(package private) LinkedList.ProtectedItr()
          Costruttore
 
Method Summary
 boolean hasNext()
          Indica se ci sono ulteriori nodi da esaminare nell'iterazione corrente.
 java.lang.Object next()
          Restituisce l'oggetto successivo da esaminare nell'iterazione.
 void remove()
          Cancella l'oggetto restituito dall'ultima chiamata al metodo next.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cursor

protected ListNode cursor

precursor

protected ListNode precursor

expectedModCount

protected int expectedModCount
Constructor Detail

LinkedList.ProtectedItr

LinkedList.ProtectedItr()
Costruttore
Method Detail

hasNext

public boolean hasNext()
Indica se ci sono ulteriori nodi da esaminare nell'iterazione corrente.
Specified by:
hasNext in interface Iterator
Returns:
true se ci sono ulteriori oggetti; false altrimenti.
Throws:
ConcurrentModificationException - se avviene una modifica concorrente degli stessi oggetti mediante qualche altro metodo.

next

public java.lang.Object next()
Restituisce l'oggetto successivo da esaminare nell'iterazione.
Specified by:
next in interface Iterator
Returns:
il prossimo oggetto da esaminare.
Throws:
NoSuchElementException - se non ci sono altri oggetti da esaminare.
ConcurrentModificationException - se avviene una modifica concorrente degli stessi oggetti mediante qualche altro metodo.

remove

public void remove()
Cancella l'oggetto restituito dall'ultima chiamata al metodo next. Il metodo può essere invocato solo una volta per ciascuna chiamata a next.
Specified by:
remove in interface Iterator
Throws:
ConcurrentModificationException - se avviene una modifica concorrente degli stessi oggetti mediante qualche altro metodo.
IllegalStateException - se nessuna chiamata al metodo next è stata precedentemente effettuata, oppure una chiamata a remove è stata già eseguita in corrispondenza dello stessa chiamata a next.