ふと、HashMapやArrayListからの値を取得するときになぜIteratorを使用するのか?
というのをきちんと説明できないと思ったので整理してみた。
理由1、統一されたインターフェースを使用できる(可読性があがる)
理由2、コレクションクラスの実装を知らなくてよい
他にも細かい理由はあると思うが、1の統一されたインタフェースというのが一番の理由だと思う。
使用例
ArrayList list = new ArrayList(); Iterator i = list.iterator(); while (i.hasNext()) { }