обычно реализации foreach модифицировать коллекцию в процессе обхода не дают, потому что поддерживать устойчивость итераторов тяжело. но если работает, то ладно. я бы так на всякий случай не делал.