Java程序员_编程开发学习笔记_网站安全运维教程_渗透技术教程

Go语言运算符教程

阿贵
1月29日发布 /正在检测是否收录...
温馨提示:
本文最后更新于2025年01月29日,已超过80天没有更新,若内容或图片失效,请留言反馈。

Go语言提供了丰富的运算符来支持各种操作,包括算术运算、关系比较、逻辑运算、位运算、赋值运算等。接下来,我们将详细介绍这些运算符,并结合示例代码帮助理解。

算术运算符

算术运算符用于执行基本的数学计算。以下是常见的算术运算符及其描述:

  • + 加法
  • - 减法
  • * 乘法
  • / 除法(对于整数类型,结果将向下取整)
  • % 取模(仅适用于整数)
package main

import "fmt"

func main() {
    a := 10
    b := 3
    fmt.Println("a + b =", a+b) // 输出: a + b = 13
    fmt.Println("a - b =", a-b) // 输出: a - b = 7
    fmt.Println("a * b =", a*b) // 输出: a * b = 30
    fmt.Println("a / b =", a/b) // 输出: a / b = 3 (注意是整数除法)
    fmt.Println("a % b =", a%b) // 输出: a % b = 1
}

关系运算符

关系运算符用来比较两个值,并返回一个布尔结果:

  • == 相等
  • != 不相等
  • > 大于
  • < 小于
  • >= 大于等于
  • <= 小于等于
package main

import "fmt"

func main() {
    a := 10
    b := 20
    fmt.Println("a == b is", a == b) // 输出: a == b is false
    fmt.Println("a != b is", a != b) // 输出: a != b is true
    fmt.Println("a > b is", a > b)   // 输出: a > b is false
    fmt.Println("a < b is", a < b)   // 输出: a < b is true
    fmt.Println("a >= b is", a >= b) // 输出: a >= b is false
    fmt.Println("a <= b is", a <= b) // 输出: a <= b is true
}

逻辑运算符

逻辑运算符用于构建复杂的条件表达式:

  • && 逻辑与
  • || 逻辑或
  • ! 逻辑非
package main

import "fmt"

func main() {
    a := true
    b := false
    fmt.Println("a && b is", a && b) // 输出: a && b is false
    fmt.Println("a || b is", a || b) // 输出: a || b is true
    fmt.Println("!a is", !a)         // 输出: !a is false
}

位运算符

位运算符允许对整数类型的二进制表示进行操作:

  • & 按位与
  • | 按位或
  • ^ 按位异或
  • << 左移
  • >> 右移
package main

import "fmt"

func main() {
    var a uint = 60 // 二进制: 0011 1100
    var b uint = 13 // 二进制: 0000 1101
    var c uint = 0

    c = a & b /* 0000 1100 */
    fmt.Printf("Line 1 - c 的值为 %d\n", c)

    c = a | b /* 0011 1101 */
    fmt.Printf("Line 2 - c 的值为 %d\n", c)

    c = a ^ b /* 0011 0001 */
    fmt.Printf("Line 3 - c 的值为 %d\n", c)

    c = a << 2 /* 1111 0000 */
    fmt.Printf("Line 4 - c 的值为 %d\n", c)

    c = a >> 2 /* 0000 1111 */
    fmt.Printf("Line 5 - c 的值为 %d\n", c)
}

赋值运算符

赋值运算符用于给变量赋值,包括简单赋值和复合赋值运算符如 +=, -=, *=, /=, %=, &=, |=, ^=, <<=, >>=

package main

import "fmt"

func main() {
    var a int = 10
    a += 5 // 相当于 a = a + 5
    fmt.Println("a after addition is", a) // 输出: a after addition is 15
}

以上只是Go语言中运算符的一个简要介绍。每个运算符都有其特定的应用场景和规则。了解它们的优先级和结合性也是至关重要的,这样可以帮助你编写更加准确的表达式。如果你有更具体的问题或者需要进一步的例子,请随时告诉我。

喜欢就支持一下吧
点赞 1 分享 收藏
评论 抢沙发
OωO
取消 登录评论