Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Вопрос по коллекции / 3 сообщений из 3, страница 1 из 1
27.06.2014, 10:48
    #38681544
JulT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по коллекции
Добрый день!
Есть такой код для удаления из ArrayList:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
ArrayList<String> list = new ArrayList<String>();
        list.add("1");
        list.add("11");
        list.add("111");
        list.add("1111");
        list.add("11111");
        
        
        ListIterator<String> iter= list.listIterator();

    // 1        
    while(iter.hasNext()){
              String str = iter.next();
                 if(str.length()==3)
                    iter.remove();  
           }
           
         
         // 2 
           while(iter.hasNext()){
               System.out.println("value = "+iter.next());
           }


Почему второй while не срабатывает, ошибок не выдает, просто не попадает в него и все. Хочу посмотреть содержимое листИтератор после удаления элемента.
...
Рейтинг: 0 / 0
27.06.2014, 10:54
    #38681551
mad_nazgul
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по коллекции
JulTДобрый день!
Есть такой код для удаления из ArrayList:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
ArrayList<String> list = new ArrayList<String>();
        list.add("1");
        list.add("11");
        list.add("111");
        list.add("1111");
        list.add("11111");
        
        
        ListIterator<String> iter= list.listIterator();

    // 1        
    while(iter.hasNext()){
              String str = iter.next();
                 if(str.length()==3)
                    iter.remove();  
           }
           
         
         // 2 
           while(iter.hasNext()){
               System.out.println("value = "+iter.next());
           }


Почему второй while не срабатывает, ошибок не выдает, просто не попадает в него и все. Хочу посмотреть содержимое листИтератор после удаления элемента.

Так правильно!
Во втором цикле тело цикла никогда не исполниться, т.к. после первого iter.hasNext() приняло значение false.
...
Рейтинг: 0 / 0
27.06.2014, 10:59
    #38681561
JulT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по коллекции
mad_nazgul, большое спасибо!
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Вопрос по коллекции / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]