<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] ## **1:基本介紹** 一、布爾類型也叫bool類型,boll類型一般只容許取True,False 一、布爾類型只占一個字節 二、bool類型用于流程控制 ## **2:案例演示:** 注意:bool類型只占用一個字節,bool類型只能取true/false ``` package main import ( "fmt" ) func main(){ sum := true res := false fmt.Println("sum=",sum,"res=",res) } ``` **運行結果:** ``` sum= true res= false ``` 一個布爾類型的值只有兩種:true 或 false。if 和 for 語句的條件部分都是布爾類型的值,并且`==`和`<`等比較操作也會產生布爾型的值。 一元操作符`!`對應邏輯非操作,因此`!true`的值為 false,更復雜一些的寫法是`(!true==false) ==true`,實際開發中我們應盡量采用比較簡潔的布爾表達式,就像用 x 來表示`x==true`。 ~~~ var aVar = 10aVar == 5 // falseaVar == 10 // trueaVar != 5 // trueaVar != 10 // false ~~~ Go語言對于值之間的比較有非常嚴格的限制,只有兩個相同類型的值才可以進行比較,如果值的類型是接口(interface),那么它們也必須都實現了相同的接口。如果其中一個值是常量,那么另外一個值可以不是常量,但是類型必須和該常量類型相同。如果以上條件都不滿足,則必須將其中一個值的類型轉換為和另外一個值的類型相同之后才可以進行比較。 布爾值可以和 &&(AND)和 ||(OR)操作符結合,并且有短路行為,如果運算符左邊的值已經可以確定整個布爾表達式的值,那么運算符右邊的值將不再被求值,因此下面的表達式總是安全的: ~~~ s != "" && s[0] == 'x' ~~~ 其中 s\[0\] 操作如果應用于空字符串將會導致 panic 異常。 因為`&&`的優先級比`||`高(&& 對應邏輯乘法,|| 對應邏輯加法,乘法比加法優先級要高),所以下面的布爾表達式可以不加小括號: ~~~ if 'a' <= c && c <= 'z' || 'A' <= c && c <= 'Z' || '0' <= c && c <= '9' { // ...ASCII字母或數字...} ~~~ 布爾值并不會隱式轉換為數字值 0 或 1,反之亦然,必須使用?if 語句顯式的進行轉換: ~~~ i := 0if b { i = 1} ~~~ 如果需要經常做類似的轉換,可以將轉換的代碼封裝成一個函數,如下所示: ~~~ // 如果b為真,btoi返回1;如果為假,btoi返回0func btoi(b bool) int { if b { return 1 } return 0} ~~~ 數字到布爾型的逆轉換非常簡單,不過為了保持對稱,我們也可以封裝一個函數: ~~~ // itob報告是否為非零。func itob(i int) bool { return i != 0 } ~~~ Go語言中不允許將整型強制轉換為布爾型,代碼如下: ~~~ var n boolfmt.Println(int(n) * 2) ~~~ 編譯錯誤,輸出如下: cannot convert n (type bool) to type int 布爾型無法參與數值運算,也無法與其他類型進行轉換。
                  <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>

                              哎呀哎呀视频在线观看