답변:
"break"문은 가장 안쪽 "for", "switch"또는 "select"문의 실행을 종료합니다.
BreakStmt = "break" [ Label ] .
레이블이있는 경우 레이블은 "for", "switch"또는 "select"문으로 묶어야하며, 실행이 종료되는 문이어야합니다 (§For 문, §Switch 문, §Select 문).
L: for i < n { switch i { case 5: break L } }
따라서 break
예제의 switch
명령문은 "가장 안쪽"명령문을 종료합니다 .
예, break
내부를 끊습니다 switch
.
https://play.golang.org/p/SZdDuVjic4
package main
import "fmt"
func main() {
myloop:for x := 0; x < 7; x++ {
fmt.Printf("%d", x)
switch {
case x == 1:
fmt.Println("start")
case x == 5:
fmt.Println("stop")
break myloop
case x > 2:
fmt.Println("crunching..")
break
default:
fmt.Println("idling..")
}
}
}
0idling.. 1start 2idling.. 3crunching.. 4crunching.. 5stop Program exited.
이것을 설명해야합니다.
for{
x := 1
switch {
case x >0:
fmt.Println("sjus")
case x == 1:
fmt.Println("GFVjk")
default:
fmt.Println("daslkjh")
}
}
}
영원히 달려
for{
x := 1
switch {
case x >0:
fmt.Println("sjus")
break
case x == 1:
fmt.Println("GFVjk")
default:
fmt.Println("daslkjh")
}
}
}
다시, 영원히 실행
그러나
package main
import "fmt"
func main() {
d:
for{
x := 1
switch {
case x >0:
fmt.Println("sjus")
break d
case x == 1:
fmt.Println("GFVjk")
default:
fmt.Println("daslkjh")
}
}
}
sjus를 인쇄 할 것입니까?
break
within 의 사용 사례는 무엇입니까 ?select {}
case