ListIterator

0

Mam pytanie - czy ktoś również ma problemy z interface'em ListIterator przeznaczonym dla kolekcji ArrayList i LinkedList, by móc poruszać się w obie strony a także do podmiany elementu, na którym znajduje się ten Iterator?

Stworzenie (po uprzednim zaimportowaniu tego, co wymagane) obiektu, przez wywołanie:

ListIterator<Integer> lit = new ListIterator<Integer>(); // oraz wszystkie możliwe "kombinacje" w tym wyrażeniu ciągle zwracają mi błąd (że konstruktor nie przyjmuje żadnych argumentów). Ręce opadają - nawet program żywcem skopiowany z Thinking in Java - IV Edition się sypie (co ponoć nie powinien).

Netbeans 6.7.1 i najnowsze jdk.

Pozdrawiam
Łukasz

0

ListIterator jest interfejsem. W związku z czym nie możesz utworzyć takiego obiektu za pomocą konstruktora. Aby uzyskać obiekt iteratora konkretnego typu musisz wywołać metodę np. ArrayList.listIterator() lub LinkedList.listIterator() na rzecz konkretnych obiektów

Mimo to nie możesz w trakcie przeglądania iteratorem modyfikować zawartości kolekcji (szczególnie listy) ponieważ jest niemal pewne, że dostaniesz wyjątek ConcurrentModificationException.

1 użytkowników online, w tym zalogowanych: 0, gości: 1