package mainimport"fmt"/* if bool表達式 {邏輯
}
*/funcmain(){//條件判斷age :=22country :="中國"if age <18&& country =="中國"{fmt.Println("未成年人")}elseif age ==18{fmt.Println("剛好是成年人")}else{fmt.Println("成年人")}}
for循環
package mainimport"fmt"funcmain(){/*for循環for init; condition; post {邏輯}*/for i :=0; i <3; i++{fmt.Println(i)}//打印九九乘法表for i :=1; i <=9; i++{for j :=1; j <= i; j++{fmt.Printf("%d * %d = %d ", i, j, i*j)}fmt.Println()}//for range,主要是對字符串、數組、切片、map、channel的遍歷/**for index, value := range 遍歷的數據 {}1. 如果遍歷的是字符串的話,key為字符串的索引,value字符串對應的縮影的字符的值的拷貝,如果不鞋key,返回的是索引2. 數組: key為數組的索引,value為索引對應的值的拷貝3. 切片: key為切片的索引,value為索引對應的值的拷貝4. map: key為map的key, value為key對應的值的拷貝5. channel: 無key, value為channel接收的數據*/name :="hello, go"for index, value :=range name {//fmt.Println(index, value)fmt.Printf("%d %c\r\n", index, value)}//不想打印index,可以使用匿名變量fmt.Println("----------------------------")for_, value :=range name {fmt.Printf("%c\r\n", value)}fmt.Println("----------------------------")for index :=range name {fmt.Printf("%c\r\n", name[index])}}
goto
package mainimport"fmt"/*
*
goto語句可以讓我的代碼跳到指定的代碼塊中運行
很少用
*/funcmain(){for i :=0; i <5; i++{for j :=0; j <4; j++{if j ==2{goto over}fmt.Println(i, j)}}over:fmt.Println("over")}
package mainimport("container/list""fmt")funcmain(){var mylist = list.List{}mylist.PushBack("go")mylist.PushBack("grpc")mylist.PushBack("gin")fmt.Println(mylist)//遍歷打印值,從頭遍歷for i := mylist.Front(); i !=nil; i = i.Next(){fmt.Println(i.Value)}fmt.Println("----------反向遍歷----------")//反向遍歷for i := mylist.Back(); i !=nil; i = i.Prev(){fmt.Println(i.Value)}fmt.Println("----------初始化list的方法----------")newList := list.New()newList.PushFront("mysql")for i := newList.Front(); i !=nil; i = i.Next(){fmt.Println(i.Value)}//插入指定元素之前或者之后fmt.Println("----------插入指定元素之前或者之后----------")i := newList.Front()for; i !=nil; i = i.Next(){if i.Value.(string)=="mysql"{break}}newList.InsertBefore("oracle", i)for i := newList.Front(); i !=nil; i = i.Next(){fmt.Println(i.Value)}//list刪除fmt.Println("----------newList刪除----------")newList.Remove(i)for i := newList.Front(); i !=nil; i = i.Next(){fmt.Println(i.Value)}}