※src.zip は java7 のものを見てます。
ListとIteratorの関係がよくわからなくなったので調べていたところ、ListIteratorというものを見つけた。
ListIterator は、next()だけじゃなくてprevious()もあるよ、というクラスらしい。
そんな需要があるのか、へーと思ってたら、なんとLinkedListのイテレートにはListIteratorしか使えないということになってた。
AbstractSequentialList.java※LinkedListのスーパークラス
/**
* Returns an iterator over the elements in this list (in proper
* sequence).<p>
*
* This implementation merely returns a list iterator over the list.
*
* @return an iterator over the elements in this list (in proper sequence)
*/
public Iterator<E> iterator() {
return listIterator();
}
ArrayList.java#iterator() はそんなことはないし、なぜだろう。