В чем разница между Iterator и Listiterator?

Iterator ite = Set.iterator();
Iterator ite = List.iterator();

ListIterator listite = List.listIterator();

Мы можем использовать Iteratorдля обхода Setили Listили Map. Но ListIteratorможно использовать только для обхода List, он не может проходить по Set. Почему?

Я знаю, что основное отличие состоит в том, что с помощью итератора мы можем перемещаться только в одном направлении, а с помощью ListIteratorмы можем перемещаться в обоих направлениях. Есть ли другие отличия? И любые преимущества ListIteratorпо сравнению с Iterator?

132
задан nbro 18 February 2015 в 15:38
поделиться