12. List list = ...;
// while 文で書く
Iterator it = list.iterator();
while (it.hasNext()) {
Object o = it.next();
...;
}
// for 文で書くと it のスコープをせまくできる
for (Iterator it = list.iterator(); it.hasNext(); ) {
Object o = it.next();
...;
}
// for-each loop だと Iterator がコード上から消える
for (Object o : list) {
...;
}
14. List list = ...;
// インデックスが欲しいときは素直にマニュアルで管理?
Iterator it = list.iterator();
int i = 0;
while (it.hasNext()) {
Object o = it.next();
i++;
...;
}
// List なら ListIterator という手があるよ
ListIterator it = list.listIterator();
while (it.hasNext()) {
Object o = it.next();
int i = it.previousIndex();
...;
}