<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] >[success]## **for語法介紹** ### 第一種寫法 ``` package main import "fmt" func main() { for i := 0;i < 10;i++{ fmt.Printf("hello 歡迎來學習go語言%v\n",i) fmt.Println(i) } } ``` <br> <br> ### 第二種寫法 ``` package main import "fmt" func main() { var j int = 3 for j <= 7{ fmt.Println("第二種寫法") j++ } } ``` <br> <br> ### for循環細節 for循環返回一定是bool類型 <br> <br> >[success] ## **for循環的2種方式** **1)傳統方式** for遍歷字符串 ``` package main import "fmt" func main() { var sum string = "你好我是呵呵" for i := 0;i < len(sum);i++{ fmt.Printf("%c",sum[i]) } } ``` <br> <br> >[info] ### **運行結果:** 該細節: 如果我們的字符串含有中文,那么傳統的遍歷字符串方式,就是錯誤,會出現亂碼。**原因是傳統的對字符串的遍歷是按照****1個字節來遍歷**,而一個**漢字在utf8編碼是對應3個字節。** 如何解決需要要將str 轉成[ ]rune 切片:=>體驗一把 把string類型強制轉換成rune ``` package main import "fmt" func main() { var sum string = "你好我是呵呵" s1 := []rune(sum) for i := 0;i < len(s1);i++{ fmt.Printf("%c",s1[i]) } } ``` 1)使用for range(range是按照字符來遍歷,上面的代碼是按照字節來遍歷) ``` package main import "fmt" func main() { var sum string = "你好我是呵呵" for index,value:= range sum{ fmt.Printf("index = %d\nvalue = %c\n",index,value) } } ``` >[info] **運行結果:** index = 0 value = 你 index = 3 value = 好 index = 6 value = 我 index = 9 value = 是 index = 12 value = 呵 index = 15 value = 呵 <br> <br> 在家加點數字 ``` package main import "fmt" func main() { var sum string = "你好我是呵呵09123" for index,value:= range sum{ fmt.Printf("index = %d\nvalue = %c\n",index,value) } } ``` >[info] **運行結果:** index = 0 value = 你 index = 3 value = 好 index = 6 value = 我 index = 9 value = 是 index = 12 value = 呵 index = 15 value = 呵 index = 18 value = 0 index = 19 value = 9 index = 20 value = 1 index = 21 value = 2 index = 22 value = 3 <br> <br> <br> >[success]## **退出循環3種方式** ### 1)**break** * [ ] break語句可以結束for、switch和select的代碼塊。 * [ ] break語句還可以在語句后面添加標簽,表示退出某個標簽對應的代碼塊,標簽要求必須定義在對應的for、switch和?select的代碼塊上。 * [ ] break會默認跳出最近的for循環 * [ ] break可以跳出指定的標簽 ``` package main import "fmt" func main() { BREAKDEMO1: for i := 0;i <= 10;i++{ for j := 0;j <= 10;j++{ if j == 5{ break BREAKDEMO1 } fmt.Printf("%v-%v\n",i,j) } } fmt.Println(".....") } ``` <br> <br> ### **2)Goto:** * [ ] **goto(跳轉到指定標簽)** * [ ] goto語句通過標簽進行代碼間的無條件跳轉。goto語句可以在快速跳出循環、避免重復退出上有一定的幫助。Go語言中使用goto語句能簡化一些代碼的實現過程。 例如雙層嵌套的for循環要退出時: * [ ] Go中不主張使用goto,避免程序混亂 ``` package main import "fmt" func main() { for i := 0;i <= 10;i++{ for j := 0;j <= 10;j++{ if j == 5{ goto detog } fmt.Printf("%v-%v\n",i,j) } } detog: fmt.Println("程序退出了") } ``` <br> <br> ### **3)continue(繼續下次循環)** * [ ] continue語句可以結束當前循環,開始下一次的循環迭代過程,僅限在for循環內使用。在?continue語句后添加標簽時,表示開始標簽對應的循環。例如: ``` package main import "fmt" func main() { for i := 0;i <= 10;i++{ for j := 0;j <= 10;j++{ if j == 5{ continue fmt.Printf("%v\n",j) } fmt.Println("程序繼續執行") } } } ``` <br> <br> >[warning] ## **練習題** 99乘法表 ``` package main import "fmt" func main() { for i := 1;i < 10;i++{ for j := 1;j <= i;j++{ fmt.Printf("%d * %d = %d\n",i,j,i*j) } } } ``` <br> <br> 隨機生成1-100的數,生成到99時break退出,且記錄生成的次數 ``` package main import ( "fmt" "math/rand" "time" ) func main() { var cont int = 0 for { rand.Seed(time.Now().UnixNano()) n := rand.Intn(100) + 1 fmt.Println(n) cont++ if n == 99{ break } } fmt.Printf("共生成了%d\n",cont) } ``` 共生成了357
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看