public class TestIterator {
public static void main(String[] arg) {
List<String> list = new ArrayList<String>(Arrays.asList("a", "b"));
Iterator<String> it = list.iterator();
while (it.hasNext()) {
String string = it.next();
list.remove(string);
}
System.out.println("list = " + list);
}
}
Сюрприз, разрывающий мозг. Никакого ConcurrentModificationException не будет. А напечатано будет
list = [b]. Это java version "1.6.0_06".Будьте бдительны, на коллекциях из двух элементов это работает так как не должно работать.
![[info]](http://l-stat.livejournal.com/img/community.gif)
![[info]](http://l-stat.livejournal.com/img/userinfo.gif)
2008-07-09 10:54 (UTC)