break 語句是否從 Switch/Select 中斷或轉義它所在的迴圈?
許多程式語言都使用 switch/select語句來處理多個案例,通常在每個案例執行後自動中斷。但是,在 Go 中,switch/select 語句中的break語句是否僅終止 switch/select 區塊或導致退出封閉迴圈?
答案:
在 Go 中,break 語句退出最裡面的 for、switch 或 select 語句。如果提供了標籤,則它必須與封閉循環、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 語句僅終止switch 語句,而不終止封閉的for迴圈。
以上是Go 中的「break」是否退出「switch/select」或其封閉迴圈?的詳細內容。更多資訊請關注PHP中文網其他相關文章!