您好,登錄后才能下訂單哦!
//定義變量a,a只在if語句中有效 if a : = 1; a > 1 { fmt.Println("a > 1") } else { if a : = 10; a > 1 { fmt.Println(a) //結果為10,和C語言變量作用域一致 } else { fmt.Println(a) } } for的三種形式 func main() { count: = 3 for i : = 0; i < count; i++ { //經典形式 fmt.Println(i) } i: = 0 for i < count{ //類似c中的while,只帶終止條件 fmt.Println(i) i++ } i = 0 for { //死循環 if i < count{ fmt.Println(i) i++ } else { break } } } switch用法: func main() { count: = 1 switch count{ case 1: fmt.Println(count) fallthrough //繼續檢查下一個case,屏蔽break功能 case 2: fmt.Println(count) //case自帶break功能 case 3: fmt.Println(count) default: fmt.Println(count) } } func main() { count: = 1 switch { //switch不帶常量,和c中if……else if……esle作用一致 case count == 1: //case需要使用邏輯表達式 fmt.Println(count) fallthrough //繼續檢查下一個case,屏蔽break功能 case count <= 1: fmt.Println(count) //case自帶break功能 case count >= 1: fmt.Println(count) default: fmt.Println(count) } } break和標簽 func main() { J: for j : = 0; j < 5; j++ { for i : = 0; i < 10; i++ { if i > 6 { break J //標簽J位于第一層for循環,break J相當于跳出第一層for循環 } fmt.Println(i) } } } continue與標簽 func main() { J: for j : = 0; j < 5; j++ { fmt.Println("--------") for i : = 0; i < 10; i++ { if i > 6 { continue J //標簽J位于第一層for循環,continue J相當于跳過其之后的語句并且跳轉到第一層for繼續執行第一層循環(第一層循環條件j的值仍然遞增) } fmt.Println(i) } fmt.Println("+++++++") //continue的時候第一層循環體內的語言也不會被執行,注意與C的區別 } } goto與標簽 func main() { J: for j : = 0; j < 5; j++ { fmt.Println("--------") for i : = 0; i < 10; i++ { if i > 6 { goto J //goto到第一層for循環,j的值被重新賦值為0,此時循環為無限循環,與continue的區別在于:continue繼續執行循環,goto重新開始循環 } fmt.Println(i) } fmt.Println("+++++++") } } 使用goto的時候仍然要注意,避免死循環,goto盡可能到其后的代碼
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。