其實和不少語言都是相似的,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則會跳轉到該語句。
總結: