как очистить список?

Sanekk

Client
Регистрация
24.06.2016
Сообщения
988
Благодарностей
388
Баллы
63
Приветствую.
Пасаны меня тут поставил в тупик очередной "нубас-вопрос".
Решил я нехитрым способом очистить список,туда всего 5-7 строчек пишится во время выполнения проекта:
Код:
for(int q=0;q<black_list.Count;q++)
{
    black_list.RemoveAt(q);
}
но эта конструкция почему-то удаляет 50% строчек из списка и заканчивается успешно.
Странно как-то если строчек 100 то после выполнения 50,после второго 25 и т.д.
Подскажите кто в курсе почему так происходит?
Или если не трудно подкиньте сниппет кто-как очищает список!:bc:
Всех благ:-)
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 614
Благодарностей
4 602
Баллы
113
так происходит, потому что ты удаляешь строки не с конца. Удаляешь нулевую строку, а на её место становится первая. Но её ты уже не удаляешь, потому что индекс уже не 0, а 1

Удалить все строки
black_list.Clear();
 
  • Спасибо
Реакции: Sanekk

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 956
Благодарностей
781
Баллы
113
Приветствую.
Пасаны меня тут поставил в тупик очередной "нубас-вопрос".
Решил я нехитрым способом очистить список,туда всего 5-7 строчек пишится во время выполнения проекта:
Код:
for(int q=0;q<black_list.Count;q++)
{
    black_list.RemoveAt(q);
}
но эта конструкция почему-то удаляет 50% строчек из списка и заканчивается успешно.
Странно как-то если строчек 100 то после выполнения 50,после второго 25 и т.д.
Подскажите кто в курсе почему так происходит?
Или если не трудно подкиньте сниппет кто-как очищает список!:bc:
Всех благ:-)
потому что когда удаляешь этим методом, то например ты удалил 3 позицию, а 4-ая позиция перемещается на 3 позицию
 
  • Спасибо
Реакции: Sanekk

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 880
Баллы
113
Приветствую.
Пасаны меня тут поставил в тупик очередной "нубас-вопрос".
Решил я нехитрым способом очистить список,туда всего 5-7 строчек пишится во время выполнения проекта:
Код:
for(int q=0;q<black_list.Count;q++)
{
    black_list.RemoveAt(q);
}
но эта конструкция почему-то удаляет 50% строчек из списка и заканчивается успешно.
Странно как-то если строчек 100 то после выполнения 50,после второго 25 и т.д.
Подскажите кто в курсе почему так происходит?
Или если не трудно подкиньте сниппет кто-как очищает список!:bc:
Всех благ:-)
list.Clear();
 
  • Спасибо
Реакции: masterLomaster и Sanekk

mizantrop4

Новичок
Регистрация
08.06.2016
Сообщения
6
Благодарностей
8
Баллы
3
project.Lists["имя листа"].Clear();
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)