Инструкция continue в Dart
Инструкция continue прекращает текущую итерацию и сразу
переходит к следующей. Цикл при этом не завершается. Так удобно
отбросить лишнее значение в начале тела.
Пусть из чисел от 1 до 5 нужно пропустить 3:
for (var val = 1; val <= 5; val++) {
if (val == 3) {
continue;
}
print(val); // выведет 1, 2, 4 и 5
}
В строке "abcde" пропустим символ "c":
var str = "abcde";
for (var j = 0; j < str.length; j++) {
var ch = str[j];
if (ch == "c") {
continue;
}
print(ch); // выведет a, b, d и e
}
Давайте теперь будем упрощать код с двумя ветками. Пусть числа от
1 до 9, которые делятся на 2, нужно возвести
в квадрат и вывести, а числа, которые делятся на 3,
возвести в куб и вывести. Вывод пока повторяется дважды:
for (var val = 1; val <= 9; val++) {
if (val % 2 == 0) {
var res = val * val;
print(res); // выведет 4, 16, 36 и 64
} else if (val % 3 == 0) {
var res = val * val * val;
print(res); // выведет 27 и 729
}
}
Если вынести print за условие, он сработает и для чисел,
которые не делятся ни на 2, ни на 3. В ветке
else поставим continue и перейдем к следующей
итерации:
for (var val = 1; val <= 9; val++) {
var res = 0;
if (val % 2 == 0) {
res = val * val;
} else if (val % 3 == 0) {
res = val * val * val;
} else {
continue;
}
print(res); // выведет 4, 27, 16, 36, 64 и 729
}
Выведите в консоль числа от 1 до 10, кроме
5.
Дана строка "program". Выведите все символы, кроме буквы
"r".
Напишите цикл, который выведет только четные числа от 1 до
100, пропуская нечетные с помощью continue.