1. 程式人生 > >易學筆記-Go語言-第4章:基本結構和基本資料型別/4.5 基本型別/4.5.1 bool型別

易學筆記-Go語言-第4章:基本結構和基本資料型別/4.5 基本型別/4.5.1 bool型別

  •  bool型別
  1. 關鍵字:bool,兩個結果:true 或者 false
  2. 何時回產生bool型別
    1. ==:相等性筆記
    2. !=:不相等性筆記
    3. >、>=、<、<=:比較
  3. 可以進行的邏輯運算
    1. 非:!
    2. 與:&&
    3. 或:||
  4. 短路:指的是邏輯運算再明確知道結果的情況下不進行的運算,明確知道結果的運算包括
    1. 與:&&:如果左邊結果已經為false,則無論右邊true還是false最終結果都是false
    2. 或:|| :如果左邊結果已經為true,則無論右邊true還是false最終結果都是true
  5. 舉例:
    1. 程式碼:
      //宣告全域性變數
      var m = 100
       
      func func1() bool {
          //宣告區域性變數
          m = 200
          return true
      }
      func main() {
          var a = 200
          var b = 100
          var r bool = (a < b) && (func1())
          fmt.Printf("m = %d,r = %g\n", m, r)
      }
    2. 結果:

      m = 100,r = %!g(bool=false)  短路沒有呼叫func1(),因為 a < b 已經是false,所以不會再呼叫func1()