其实和不少语言都是相似的,go语言也是有运算符、条件语句和循环语句。数组
运算符(这一点和c相同)post
Go 语言内置的运算符:ui
固然,运算符也是有优先级的。spa
条件语句指针
正如其余语言,go中也存在一下条件语句:code
注意,在这里咱们除了常规的if语句操做相同之外,其余都是相似。字符串
switch注意点以下:string
select注意点以下:it
选择语句io
注意,for循环条件控制器是无需括号的,循环体须要花括号包裹,循环变量、循环调教、循环变量变化量之间用 ; 分割。
demo以下:
package main
//导包
import (
"fmt"
)
func main() {
numbers := [6]int{1, 2, 3, 5}
for i := range numbers {
fmt.Printf("第 %d 位 x 的值 = %d\n", i, numbers[i])
}
fmt.Println("====我是分割线====")
for i, x := range numbers {
fmt.Printf("第 %d 位 x 的值 = %d\n", i, x)
}
fmt.Println("====我是分割线====")
for a := 0; a < len(numbers); a++ {
fmt.Printf("第 %d 位 x 的值 = %d\n", a, numbers[a])
}
}
复制代码
固然咱们可以小小的推测一下结果,这里直接贴出结果以下:
第 0 位 x 的值 = 1
第 1 位 x 的值 = 2
第 2 位 x 的值 = 3
第 3 位 x 的值 = 5
第 4 位 x 的值 = 0
第 5 位 x 的值 = 0
====我是分割线====
第 0 位 x 的值 = 1
第 1 位 x 的值 = 2
第 2 位 x 的值 = 3
第 3 位 x 的值 = 5
第 4 位 x 的值 = 0
第 5 位 x 的值 = 0
====我是分割线====
第 0 位 x 的值 = 1
第 1 位 x 的值 = 2
第 2 位 x 的值 = 3
第 3 位 x 的值 = 5
第 4 位 x 的值 = 0
第 5 位 x 的值 = 0
复制代码
固然,咱们说到循环,不得不提一下循环控制语句,以下:
值得一提的是,break和continue都和其余语言中的用法相似。可是个别一些语言中不存在goto或者不多使用。goto示例以下:
/* 定义局部变量 */
var a int = 10
/* 循环 */
LOOP: for a < 20 {
if a == 15 {
/* 跳过迭代 */
a = a + 1
goto LOOP
}
fmt.Printf("a的值为 : %d\n", a)
a++
}
复制代码
运行结果以下:
a的值为 : 10
a的值为 : 11
a的值为 : 12
a的值为 : 13
a的值为 : 14
a的值为 : 16
a的值为 : 17
a的值为 : 18
a的值为 : 19
复制代码
咱们简易的看一下goto语法:label: statement; ··· goto label
也就是说咱们给某处语句打上 label 标签,使用goto则会跳转到该语句。
总结: