1
JavaIntermediate#collections
Iterator supports forward-only traversal and removal for any Collection. ListIterator (for List only) supports bidirectional traversal, element replacement (set()), and index-aware insertion.
ListIterator<String> it = list.listIterator();
while (it.hasNext()) {
String s = it.next();
if (s.equals("x")) it.set("y"); // replace in place
}