Оператор break
Оператор break в Go используется для досрочного выхода из циклов for,
а также из конструкций switch и select. При выполнении этого оператора
происходит немедленное завершение текущей итерации и выход из блока кода.
Оператор break может использоваться с меткой для выхода из вложенных циклов.
Синтаксис
break
Для выхода из вложенного цикла с меткой:
break Label
Пример
Давайте используем оператор break для выхода из цикла for
при достижении определенного условия:
package main
import "fmt"
func main() {
for i := 0; i < 10; i++ {
if i == 5 {
fmt.Println("Breaking at i =", i)
break
}
fmt.Println("i =", i)
}
}
Результат выполнения кода:
"i = 0"
"i = 1"
"i = 2"
"i = 3"
"i = 4"
"Breaking at i = 5"
Пример
Давайте рассмотрим использование оператора break
в бесконечном цикле for:
package main
import "fmt"
func main() {
counter := 0
for {
fmt.Println("Iteration", counter)
counter++
if counter == 3 {
fmt.Println("Breaking infinite loop")
break
}
}
}
Результат выполнения кода:
"Iteration 0"
"Iteration 1"
"Iteration 2"
"Breaking infinite loop"
Пример
Давайте рассмотрим использование метки для выхода из вложенного цикла:
package main
import "fmt"
func main() {
outer:
for i := 0; i < 3; i++ {
for j := 0; j < 3; j++ {
fmt.Printf("i=%d, j=%d\n", i, j)
if i == 1 && j == 1 {
fmt.Println("Breaking both loops")
break outer
}
}
}
fmt.Println("Loop finished")
}
Результат выполнения кода:
"i=0, j=0"
"i=0, j=1"
"i=0, j=2"
"i=1, j=0"
"i=1, j=1"
"Breaking both loops"
"Loop finished"
Пример
Давайте рассмотрим использование оператора break
в конструкции switch:
package main
import "fmt"
func main() {
for i := 0; i < 5; i++ {
switch i {
case 0:
fmt.Println("Zero")
case 1:
fmt.Println("One")
default:
fmt.Println("Other number:", i)
break
}
fmt.Println("After switch")
}
}
Результат выполнения кода:
"Zero"
"After switch"
"One"
"After switch"
"Other number: 2"
"Other number: 3"
"Other number: 4"