<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ## 一、if ![](https://img.kancloud.cn/c6/11/c611864bb43072d693ed547c67295681_418x380.png) #### 實例 ~~~ package main import "fmt" func main() { /* 定義局部變量 */ var a int = 100 /* 使用 if 語句判斷布爾表達式 */ if a < 200 { /* 如果條件為 true 則執行以下語句 */ fmt.Printf("a 的值小于 200\n") } fmt.Printf("a 的值為 : %d\n", a) } ~~~ 執行結果: a 小于 200 a 的值為 : 100 ## 二、if...else ![](https://img.kancloud.cn/ed/c4/edc4ea519ea3b39a9154813a96331bf1_363x380.png) #### 實例: ~~~ package main import "fmt" func main() { /* 局部變量定義 */ var a int = 100 /* 判斷布爾表達式 */ if a < 20 { /* 如果條件為 true 則執行以下語句 */ fmt.Printf("a 小于 20\n") } else { /* 如果條件為 false 則執行以下語句 */ fmt.Printf("a 大于 20\n") } fmt.Printf("a 的值為 : %d\n", a) } ~~~ 執行結果: a 大于 20 a 的值為 : 100 ## 三、switch ![](https://img.kancloud.cn/a2/3d/a23daded2adb1faf361d317f9de0cd6e_487x536.png) 語法: ~~~ switch var1 { case val1: ... case val2: ... default: ... } ~~~ #### 1、實例 ~~~ package main import "fmt" func main() { /* 定義局部變量 */ var grade string = "B" var marks int = 90 switch marks { case 90: grade = "A" case 80: grade = "B" case 50, 60, 70: grade = "C" default: grade = "D" } switch { case grade == "A": fmt.Printf("優秀!\n") case grade == "B", grade == "C": fmt.Printf("良好\n") case grade == "D": fmt.Printf("及格\n") case grade == "F": fmt.Printf("不及格\n") default: fmt.Printf("差\n") } fmt.Printf("你的等級是 %s\n", grade) } ~~~ 執行結果: 優秀! 你的等級是 A #### 2、Type Switch switch 語句還可以被用于 type-switch 來判斷某個 interface 變量中實際存儲的變量類型。 語法: ~~~ switch x.(type){ case type: statement(s); case type: statement(s); /* 你可以定義任意個數的case */ default: /* 可選 */ statement(s); } ~~~ ~~~ package main import "fmt" func main() { var x interface{} switch i := x.(type) { case nil: fmt.Printf(" x 的類型 :%T", i) case int: fmt.Printf("x 是 int 型") case float64: fmt.Printf("x 是 float64 型") case func(int) float64: fmt.Printf("x 是 func(int) 型") case bool, string: fmt.Printf("x 是 bool 或 string 型") default: fmt.Printf("未知型") } } ~~~ 執行結果: x 的類型 :<nil> #### 3、fallthrough 使用 fallthrough 會強制執行后面的 case 語句,fallthrough 不會判斷下一條 case 的表達式結果是否為 true。 ~~~ package main import "fmt" func main() { switch { case false: fmt.Println("1、case 條件語句為 false") fallthrough case true: fmt.Println("2、case 條件語句為 true") fallthrough case false: fmt.Println("3、case 條件語句為 false") fallthrough case true: fmt.Println("4、case 條件語句為 true") case false: fmt.Println("5、case 條件語句為 false") fallthrough default: fmt.Println("6、默認 case") } } ~~~ 執行結果: 2、case 條件語句為 true 3、case 條件語句為 false 4、case 條件語句為 true ## 四、select 語句 select 是 Go 中的一個控制結構,類似于用于通信的 switch 語句。每個 case 必須是一個通信操作,要么是發送要么是接收。 select 隨機執行一個可運行的 case。如果沒有 case 可運行,它將阻塞,直到有 case 可運行。一個默認的子句應該總是可運行的。 語法: ``` select{ casecommunication clause ?: ? ? ? ?statement(s); casecommunication clause ?: ? ? ? ?statement(s); /* 你可以定義任意數量的 case */ default:/* 可選 */ ? ? ? ?statement(s); } ``` * 每個 case 都必須是一個通信 * 所有 channel 表達式都會被求值 * 所有被發送的表達式都會被求值 * 如果任意某個通信可以進行,它就執行,其他被忽略。 * 如果有多個 case 都可以運行,Select 會隨機公平地選出一個執行。其他不會執行。 否則: 1. 如果有 default 子句,則執行該語句。 2. 如果沒有 default 子句,select 將阻塞,直到某個通信可以運行;Go 不會重新對 channel 或值進行求值。
                  <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>

                              哎呀哎呀视频在线观看