Работа со списком в цикле - C#
Формулировка задачи:
Здравствуйте.
в цикле for перебираю элементы списка и некоторые удаляю, столкнулся с ошибкой выхода за размер коллекции. Подскажите цикл for в компилированном виде перебирает до начального размера коллекции или каждый проход сверяет размер ? Подозреваю что сверяет. Каким в таком случае способом рациональнее всего удалять элементы из коллекции? (На ум приходит массив индексов и удаление после выборки).
Решение задачи: «Работа со списком в цикле»
textual
Листинг программы
List<int> a = new List<int>() { 1, 2, 3, 4, 5 }; for (int i = 0; i < a.Count; i++) if (a[i] == 1 || a[i] == 2 || a[i] == 4 || a[i] == 5) { a.Remove(a[i]); i--; } foreach (var item in a) Console.WriteLine(item); Console.ReadKey();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д