Go语言学习笔记(语法篇) - 控制结构
Go语言的控制结构比Java、C语言都要少,只有很简单的几个,语法与也略有不同。 Go语言的保留关键字 break default func interface select 运算符* / %<< >> & &^+ - | ^ && || ! ifif中的条件不需要用中括号()给包含起来。 a := 1 b := 2 c := 3 if a < b && b < c { fmt.Println(true) } else { fmt.Println(false) } 而且if接受初始化语句,初始化的变量为一个局部变量。 if f,err := os.Open("c:/hello.go"); err == nil { fmt.Println(f.Name()) } else { fmt.Println(err) } goto在Java里这是一个保留关键字,但没有任何实际作用。goto用不好容易造成程序的逻辑混乱。下面用Lable标识一个标签,goto可以将执行跳转到这个标签位置,注意标签是大小写敏感的。
func myfunc() { i := 0 Lable: fmt.Println(i) i++ if i < 10 { goto Lable } } for Go中没有while,do while循环,只有一个for,不过却可以完成各种灵活循环操作,同样也不需要中括号包含。 func main() { //跟Java相似的for循环 for i := 0; i < 10; i++ { fmt.Println(i) } //与While一样 for false { } /死循环 for { } Here: for i := 0; i < 10; i++ { for j := 0; j < 10; j++ { fmt.Println(j) if j > 5 { break Here } } } } range
|