break 문은 Switch/Select에서 중단됩니까, 아니면 루프가 있는 루프를 탈출합니까?
많은 프로그래밍 언어에서 switch/select를 사용합니다. 여러 사례를 처리하는 문으로, 일반적으로 각 사례 실행 후 자동으로 중단됩니다. 그러나 Go에서는 switch/select 문 내의 break 문이 단지 switch/select 블록을 종료하거나 둘러싸는 루프를 종료하게 합니까?
답변:
Go에서 break 문은 가장 안쪽의 for, switch 또는 select 문을 종료합니다. 레이블이 제공되는 경우 포함 루프, 스위치 또는 선택 구문의 레이블과 일치해야 합니다.
Go 프로그래밍 언어 사양에서 발췌한 다음 내용은 이 동작을 명확히 보여줍니다.
Break statements, The Go Programming Language Specification. A "break" statement terminates execution of the innermost "for", "switch" or "select" statement. BreakStmt = "break" [ Label ] .
따라서 제공된 예에서:
for { switch sometest() { case 0: dosomething() case 1: break default: dosomethingelse() } }
break 문은 둘러싼 for 문이 아닌 스위치 문만 종료합니다. 루프.
위 내용은 Go에서 `break`는 `switch/select` 또는 해당 루프를 종료합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!