【Golang 基礎】Go 語言的操做符

Go 語言的運算符 (示例代碼

算術運算符

  • +:相加;
  • -:相減;
  • *:相乘;
  • /:相除;
  • %:求餘;
  • ++:自增;
  • --:自減;

其中,++-- 不能用於賦值表達式, 如: count2 := count++;而且在 Go 語言中,不存在如:++count 表達式git

關係運算符

  • ==:檢查兩個值是否相等,若是相等返回 true,不然返回 false
  • !=:檢查兩個值是否不相等,若是不相等返回 true,不然返回 false
  • >:檢查左邊值是否大於右邊值,若是是返回 true,不然返回 false
  • <:檢查左邊值是否小於右邊值,若是是返回 true,不然返回 false
  • >=:檢查左邊值是否大於等於右邊值,若是是返回 true,不然返回 false
  • <=:檢查左邊值是否小於等於右邊值,若是是返回 true,不然返回 false

邏輯運算符

  • &&:邏輯 AND 運算符。若是兩邊的操做數都是 true,則條件爲 true,不然爲 false
  • ||:邏輯 OR 運算符。若是兩邊的操做數有一個 true,則條件爲 true,不然爲 false
  • !:邏輯 NOT 運算符。若是條件爲 true,則邏輯 NOT 添加爲 true,不然爲 false

位運算符

位運算符是對整數在內存中的二進制進行操做。
  • &:按位與運算符。其功能是參與運算的兩個數的二進制按位對齊,當對應位都爲 1 時,才返回 1
fmt.Println(3 & 4)  // 0

// 計算過程
//   0011     => 3 的二進制
//   0100     => 4 的二進制
// &
// ---------------------------
//   0000     => 0 的二進制
  • |:按位或運算符。其功能是參與運算的兩個數的二進制按位對齊,當對應位中只要有一位是 1,就返回 1
fmt.Println(3 | 4) // 7

// 計算過程
//   0011     => 3 的二進制
//   0100     => 4 的二進制
// &
// ---------------------------
//   0111     => 7 的二進制
  • ^:按位異或運算符。其是參與運算的兩個數的二進制按位對齊,當對應位有一位是 1,就返回 1;若是對應兩位都是 1 或 0,就返回 0
fmt.Println(25 ^ 3) // 26

// 計算過程
//   0001 1001     => 25 的二進制
//   0000 0011     => 3 的二進制
// ^
// ---------------------------
//   0001 1010     => 26 的二進制
  • <<:左移運算符。其功能是將數值的二進制全部位向左移動指定的位數
fmt.Println(3 << 3) // 24

// 計算過程
//      0000 0011     => 3 的二進制
//              3
// <<      
// ---------------------------
//      0001 1000     => 24 的二進制
  • >>:右移運算符。其功能是將數值的二進制全部位向右移動指定的位數
fmt.Println(3 >> 3) // 0

// 計算過程
//      0000 0011     => 3 的二進制
//              3
// >>      
// ---------------------------
//      0000 0000     => 0 的二進制

賦值運算符

  • =:簡單的賦值運算符,將一個表達式的值賦給一個左值;
  • +=:相加後再賦值;
  • -=:相減後再賦值;
  • *=:相乘後再賦值;
  • /=:相除後再賦值;
  • %=:取餘後再賦值;
  • &=:按位與後賦值;
  • |=:按位或後賦值;
  • ^=:按位異或後賦值;
  • <<=:左位移後賦值;
  • >>=:右位移後賦值;
相關文章
相關標籤/搜索