數據結構和算法(Golang實現)(3)簡單入門Golang-流程控制語句

流程控制語句

計算機編程語言中,流程控制語句很重要,能夠讓機器知道何時作什麼事,作幾回。主要有條件和循環語句。算法

Golang只有一種循環:for,只有一種判斷:if,還有一種特殊的switch條件選擇語句。編程

1、條件語句

舉個例子:segmentfault

// 判斷語句
    if a > 0 {
        fmt.Println("a>0")
    } else {
        fmt.Println("a<=0")
    }

a > 0時打印a>0,不然打印a<=0。其中條件a > 0不須要加小括號。數組

條件語句表示若是什麼,作什麼,不然,作什麼。數據結構

幾種判斷形式爲:併發

if a > 0{

}

只有if數據結構和算法

if a > 0{

}else{

}

if以及else編程語言

if a > 0{

}else if a == 0 {

}else{

}

中間可混入else if函數

若是中間的條件太多的話,能夠使用switch條件語句:code

num := 4

    switch num {
    case 3:
        fmt.Println(3)
    case 4:
        fmt.Println(4)
    case 5:
        fmt.Println(5)
    default:
        fmt.Println("not found")

這種語句會從case一個個判斷,若是找到一個case符合條件,那麼進入該case執行指令,不然進入default

上面num := 4將會進入case 4,打印數字4後結束。若是num := 5,將會打印數字5後結束。若是num := 8,會打印字符串 not found。

2、循環語句

循環語句:

// 循環語句
    for i := 9; i <= 10; i++ {
        fmt.Printf("i=%d\n", i)
    }

其中i是局部變量,循環第一次前被賦予了值9,而後判斷是否知足i<=10條件,若是知足那麼進入循環打印,每一次循環後會加1,也就是i++,而後繼續判斷是否知足條件。

形式爲:

for 起始狀態; 進入循環需知足的條件; 每次循環後執行的指令 {
    }

你也能夠死循環:

// 死循環語句
    a = 0
    for {
        if a >= 10 {
            fmt.Println("out")
            // 退出循環
            break
        }

        a = a + 1
        if a > 5 {
            continue
        } 

        fmt.Println(a)
    }

死循環直接for {},後面不須要加條件,而後當a>=10時跳出循環能夠使用break,表示跳出for {},對於a > 5,咱們不想打印出值,能夠使用continue跳事後面的語句fmt.Println(a),提早再一次進入循環。

切片字典均可以使用循環來遍歷數據:

e := []int64{1, 2, 3}                 // slice
    f := map[string]int64{"a": 3, "b": 4} // map

    // 循環切片
    for k, v := range e {
        fmt.Println(k, v)
    }

    // 循環map
    for k, v := range f {
        fmt.Println(k, v)
    }

切片遍歷出來的結果爲:數據下標,數據,字典遍歷出來的結果爲:數據的鍵,數據的值:

0 1
1 2
2 3
3 3

a 3
b 4
f 5

系列文章入口

我是陳星星,歡迎閱讀我親自寫的 數據結構和算法(Golang實現),文章首發於 閱讀更友好的GitBook

相關文章
相關標籤/搜索