Ключевое слово `break`
Часть раздела Основы путешествия по GO на Coddy — урок 47 из 109.
Ключевое слово break позволяет нам немедленно выйти из цикла, даже если условие цикла в обычном случае продолжало бы выполняться.
Давайте создадим программу, которая считает от 1 до 10, но останавливается, когда доходит до 5:
for i := 1; i <= 10; i++ {
if i > 5 {
break
}
fmt.Println(i)
}
fmt.Println("Loop exited")После выполнения этого кода на экране появятся числа от 1 до 5, а затем сообщение «Loop exited»:
1
2
3
4
5
Loop exitedИнструкция break приводит к немедленной остановке цикла, когда i становится больше 5. Это означает, что цикл никогда не выведет числа от 6 до 10. Вместо этого он переходит непосредственно к коду после цикла и выводит "Loop exited".
Задание
ЛегкоВ этом испытании вы попрактикуетесь в использовании ключевого слова break для досрочного выхода из цикла.
У вас есть последовательность чисел от 1 до 10. Ваша задача — найти первое число, которое делится на 3, вывести его и затем немедленно выйти из цикла с помощью break.
Таким образом, как только вы найдете то, что ищете, вы не будете тратить время на дальнейший поиск среди остальных чисел.
Шпаргалка
Ключевое слово break позволяет немедленно выйти из цикла, даже если условие цикла в обычном режиме продолжало бы выполняться.
for i := 1; i <= 10; i++ {
if i > 5 {
break
}
fmt.Println(i)
}
fmt.Println("Loop exited")Когда break выполняется, цикл немедленно останавливается, и выполнение переходит к коду, следующему за циклом.
Попробуйте сами
package main
import "fmt"
func main() {
// Цикл по числам от 1 до 10
for i := 1; i <= 10; i++ {
fmt.Printf("Checking number: %d\n", i)
// TODO: Проверить, делится ли текущее число на 3
// Если да, вывести "Found it: [number]!" и использовать break для выхода из цикла
}
fmt.Println("Search complete")
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы сравнения и логические операторы
Операторы сравнения — Часть 1Операторы сравнения — Часть 2Логический оператор ANDЛогический оператор ORЛогический оператор NOTОсновы приоритета операторовИтоги: выполнение сравнений7Управляющие конструкции: Циклы
Что такое цикл `for`Цикл `for` — основыЦикл `for` — только условиеКлючевое слово `break`Ключевое слово `continue`Вложенные циклыИтоги — повторение действий2Переменные и базовые типы данных
Что такое переменнаяВывод типов с помощью `:=`Целые числа (int)Числа с плавающей точкойЛогический тип (Booleans)СтрокиНулевые значения (Zero Values)КонстантыПравила именованияИтоги: переменные и типы5Основы ввода-вывода
Форматированный выводСпецификаторы форматаВывод типовБазовый ввод данных пользователемИтоги: ввод и вывод8Функции
Понимание функцийОбъявление функцииВызов функцийПараметры функцииВозврат одного значенияВозврат нескольких значенийИменованные возвращаемые значенияОсновы области видимости функцийИтоги — создание переиспользуемого кода3Базовые операторы
Арифметические операторыОператор деленияОператор остатка от деленияОператор присваиванияКомбинированные операторы присваиванияИнкремент и декрементПовторение — Вычисления6Управление потоком: Условные конструкции
Оператор `if`Ключевое слово `else`Ключевое слово `else if`Затенение переменных в `if`Инициализация переменныхОператор `switch`Switch с выражениямиSwitch без выраженийКлючевое слово `fallthrough`Итоги — Принятие решений