Так в чём? Можно поподробнее? Перепишу скорее завтра =(
Смотри в чем проблема фора:
допустим у нас такой список: 1, 2, 3, 4, 5, 6, 7, 8
нам нужно удалить все, что меньше 10-ти.
Первый цыкл. Счетчик равен 0
элемент под индексом 0 (в нашем случае это еденица) меньше чем 10, значит его удаляем. Теперь у нас счетчик равен 1, а список выглядит так: 2, 3, 4, 5, 6, 7, 8
Следующая итерация, счетчик равен 1
Элемент под индексом 1 (для нового списка это тройка) меньше 10, удаляем. Тепарь счетчик равен 2, а список выглядит так: 2, 4, 5, 6, 7, 8
Следующая итерация, счетчик равен 2
Элемент под индексом 2 (для нового списка это пятерка) меньше 10, удаляем. Тепарь счетчик равен 3, а список выглядит так: 2, 4, 6, 7, 8
И так далее. Правди в таком случае непонятно, почему не падал IndexOutOfBoundException.