Iterator


ふと、HashMapやArrayListからの値を取得するときになぜIteratorを使用するのか?


というのをきちんと説明できないと思ったので整理してみた。



理由1、統一されたインターフェースを使用できる(可読性があがる)


理由2、コレクションクラスの実装を知らなくてよい



他にも細かい理由はあると思うが、1の統一されたインタフェースというのが一番の理由だと思う。




使用例

ArrayList list = new ArrayList();

Iterator i = list.iterator();
while (i.hasNext()) {

}