English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Циклические управляющие команды в Go используются для изменения выполнения программы. При выходе из области действия цикла созданные в этой области объекты также уничтожаются. Язык Go поддерживает три типа циклических управляющих команд:
Break
Goto
Continue
Команда break используется для завершения текущего цикла или команды. После этого управление передается к следующей команде после команды break (если есть). Если команда break存在于 вложенном цикле, она завершает только те циклы, которые содержат команду break.
Схема процесса:
package main import "fmt" func main() { for i:=0; i<5; i++{ fmt.Println(i) //Цикл for прерывается при i = 3 if i == 3{ break; } } }
Вывод:
0 1 2 3
Эта команда используется для передачи управления к метке в программе. Метка - это有效的 идентификатор, который ставится перед командой передачи управления. Из-за сложности отслеживания управления в программе программисты обычно не используют команды goto.
Схема процесса:
package main import "fmt" func main() { var x int = 0 //Принцип работы цикла for аналогичен принципу работы цикла while Lable1: for x < 8 { if x == 5 { //Использование команды goto x = x + 1; goto Lable1 } fmt.Printf("Значение: %d\n", x); x++; } }
Вывод:
Значение: 0 Значение: 1 Значение: 2 Значение: 3 Значение: 4 Значение: 6 Значение: 7
Эта команда используется для пропуска части выполнения цикла при определенных условиях. После этого управление передается в начало цикла. В основном, это пропускает следующие команды и переходит к следующей итерации цикла.
Схема процесса:
package main import "fmt" func main() { var x int = 0 //Принцип работы цикла for аналогичен принципу работы цикла while for x < 8 { if x == 5 { //Пропуск двух итераций x = x + 2 continue } fmt.Printf("Значение: %d\n", x) x++ } }
Вывод:
Значение: 0 Значение: 1 Значение: 2 Значение: 3 Значение: 4 Значение: 7