<dd id="3pk9i"><optgroup id="3pk9i"><video id="3pk9i"></video></optgroup></dd>
<rp id="3pk9i"></rp>

<dd id="3pk9i"><track id="3pk9i"></track></dd>
      1. <th id="3pk9i"></th>
        1. <ol id="3pk9i"><ruby id="3pk9i"></ruby></ol>

        2. go語言有沒有while-資訊

          來源:php中文網 | 2023-01-07 14:54:28 |

          本教程操作環境:windows7系統、GO 1.18版本、Dell G3電腦。


          (資料圖)

          go語言中沒有while關鍵字,,不支持while和do-while循環結構。

          循環語句用于重復執行某些程序中的語句。

          編程語言中常見的循環語句包括while語句、do-while語句和for語句。但是Go語言中僅有for語言,沒有while語句。從功能上講,但凡while語句能做的事情,for語句也可以實現。因此Go語言統一了for語句和while語句。

          且Go的開發團隊有比較嚴重的潔癖,while 并不是一個必要選項,提供多種方式讓開發者選擇,容易讓開發者迷路,產生選擇困難;所以干脆不給選擇的機會,強制讓大家統一風格。

          for語句

          Go語言的for語句一共有三種:

          第一種:

          for init; condition; post {...}
          init 一般為賦值表達式,用于循環控制變量及其他變量初始化。condition 關系表達式和邏輯表達式,用于指示循環控制條件。post 一般為賦值表達式,用于增減循環控制變量

          以上三點等價于其他編程語言的for語句,因此第一種寫法等價于其他語言的for語句。

          第二種:

          for condition {...}

          第二種寫法等價于其他語言的while語句。因為Go的for語句使不寫括號的,因此刪掉initpost就完全等價于了while語句。因此Go沒有引入while這個關鍵字,直接使用for語句實現while語句。

          第三種:

          for {...}

          第三種寫法等價于其他語言的for(;;),也等價于while(true)。

          實例:

          package mainimport "fmt"func main() {res := 1n := 10for i:=1; i<=n; i++ {res *= i}fmt.Println(n,"的階乘是",res)}// 10 的階乘是 3628800

          for-each range

          Go語言中for循環的range格式可以迭代slice、map、數組、字符串等類型,格式如下:

          for k, v := range oldMap {newMap[k] = v}

          實例:

          package mainimport "fmt"func main() {nums := [5]int{1, 2, 3, 4, 5}for i,e := range nums {fmt.Println("索引", i, "位置上的數值為", e)}}// 索引 0 位置上的數值為 1// 索引 1 位置上的數值為 2// 索引 2 位置上的數值為 3// 索引 3 位置上的數值為 4// 索引 4 位置上的數值為 5

          同Python,Go語言也使用下劃線_來接住不需要的返回值。

          for _,e := range nums {...}

          以上就是go語言有沒有while的詳細內容,更多請關注php中文網其它相關文章!

          關鍵詞: go語言

          中文字幕在线观看2021
          <dd id="3pk9i"><optgroup id="3pk9i"><video id="3pk9i"></video></optgroup></dd>
          <rp id="3pk9i"></rp>

          <dd id="3pk9i"><track id="3pk9i"></track></dd>
            1. <th id="3pk9i"></th>
              1. <ol id="3pk9i"><ruby id="3pk9i"></ruby></ol>