После завершения sh итерации по элементу HashSet
с использованием Iterator
, hasNext()
всегда вернет false
.
Если вы выполните sh, чтобы выполнить секунду итерации, вы должны создать вторую Iterator
, снова вызвав it = hs.iterator();
.
// first iteration
Iterator<Integer> it = hs.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
System.out.println("afterremoval");
hs.remove(234);
// second iteration
it = hs.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}