• 【Go 基础篇】Go语言运算符解析:探索数学与逻辑的奥秘与运用


    在这里插入图片描述

    介绍

    计算机编程中,运算符(Operators)是用于执行各种数学和逻辑操作的符号,它们使得计算机能够进行复杂的计算和决策。在Go语言(Golang)中,运算符是编写程序的基本工具之一,它们涵盖了算术运算、比较运算、逻辑运算等多个方面。本篇博客将深入探讨Go语言中的各种运算符,包括算术运算符、关系运算符、逻辑运算符、位运算符以及赋值运算符,帮助读者更好地理解运算符的功能、用法以及在实际编程中的应用。

    算术运算符

    算术运算符用于执行数学运算,如加法、减法、乘法、除法等。

    加法运算符(+

    加法运算符用于将两个数相加。

    a := 5
    b := 3
    result := a + b  // 结果为 8
    
    • 1
    • 2
    • 3

    减法运算符(-

    减法运算符用于将一个数减去另一个数。

    a := 10
    b := 7
    result := a - b  // 结果为 3
    
    • 1
    • 2
    • 3

    乘法运算符(*

    乘法运算符用于将两个数相乘。

    a := 4
    b := 6
    result := a * b  // 结果为 24
    
    • 1
    • 2
    • 3

    除法运算符(/

    除法运算符用于将一个数除以另一个数。

    a := 10.0
    b := 2.0
    result := a / b  // 结果为 5.0
    
    • 1
    • 2
    • 3

    取余运算符(%

    取余运算符用于计算两个数相除的余数。

    a := 10
    b := 3
    result := a % b  // 结果为 1
    
    • 1
    • 2
    • 3

    关系运算符

    关系运算符用于比较两个值的大小或相等性。

    等于运算符(==

    等于运算符用于检查两个值是否相等。

    a := 5
    b := 5
    isEqual := a == b  // 结果为 true
    
    • 1
    • 2
    • 3

    不等于运算符(!=

    不等于运算符用于检查两个值是否不相等。

    a := 7
    b := 3
    isNotEqual := a != b  // 结果为 true
    
    • 1
    • 2
    • 3

    大于运算符(>

    大于运算符用于检查左边的值是否大于右边的值。

    a := 8
    b := 5
    isGreater := a > b  // 结果为 true
    
    • 1
    • 2
    • 3

    小于运算符(<

    小于运算符用于检查左边的值是否小于右边的值。

    a := 3
    b := 6
    isLess := a < b  // 结果为 true
    
    • 1
    • 2
    • 3

    大于等于运算符(>=

    大于等于运算符用于检查左边的值是否大于等于右边的值。

    a := 5
    b := 5
    isGreaterOrEqual := a >= b  // 结果为 true
    
    • 1
    • 2
    • 3

    小于等于运算符(<=

    小于等于运算符用于检查左边的值是否小于等于右边的值。

    a := 4
    b := 7
    isLessOrEqual := a <= b  // 结果为 true
    
    • 1
    • 2
    • 3

    逻辑运算符

    逻辑运算符用于执行逻辑操作,如与、或、非等。

    与运算符(&&

    与运算符用于同时满足两个条件。

    a := true
    b := false
    result := a && b  // 结果为 false
    
    • 1
    • 2
    • 3

    或运算符(||

    或运算符用于满足任意一个条件。

    a := true
    b := false
    result := a || b  // 结果为 true
    
    • 1
    • 2
    • 3

    非运算符(!

    非运算符用于取反一个条件。

    a := true
    result := !a  // 结果为 false
    
    • 1
    • 2

    位运算符

    位运算符用于对二进制位进行操作,通常用于处理整数类型。

    按位与运算符(&

    按位与运算符将两个数的每个对应位进行与操作。

    a := 5   // 二进制 0101
    b := 3   // 二进制 0011
    result := a & b  // 结果为 0001,即 1
    
    • 1
    • 2
    • 3

    按位或运算符(|

    按位或运算符将两个数的每个对应位进行或操作。

    a := 5   // 二进制 0101
    b := 3   // 二进制 0011
    result := a | b  // 结果为 0111,即 7
    
    • 1
    • 2
    • 3

    按位异或运算符(^

    按位异或运算符将两个数的每个对应位进行异或操作。

    a := 5   // 二进制 0101
    b := 3   // 二进制 0011
    result := a ^ b  // 结果为 0110,即 6
    
    • 1
    • 2
    • 3

    左移运算符(<<

    左移运算符将一个数的二进制表示左移指定的位数。

    a := 5   // 二进制 0101
    shifted := a << 2  // 结果为 10100,即 20
    
    • 1
    • 2

    右移运算符(>>

    右移运算符将一个数的二进制表示右移指定的位数。

    a := 10   // 二进制 1010
    shifted := a >> 2  // 结果为 10,即 2
    
    • 1
    • 2

    赋值运算符

    赋值运算符用于将一个值赋给变量。

    简单赋值运算符(=

    简单赋值运算符用于将右边的值赋给左边的变量。

    a := 5
    b := a  // 将 a 的值赋给 b
    
    • 1
    • 2

    加法赋值运算符(+=

    加法赋值运算符用于将右边的值加到左边的变量上,并将结果赋给左边的变量。

    a := 3
    b := 7
    a += b  // 相当于 a = a + b,结果为 10
    
    • 1
    • 2
    • 3

    减法赋值运算符(-=

    减法赋值运算符用于将右边的值从左边的变量中减去,并将结果赋给左边的变量。

    a := 10
    b := 4
    a -= b  // 相当于 a = a - b,结果为 6
    
    • 1
    • 2
    • 3

    乘法赋值运算符(*=

    乘法赋值运算符用于将右边的值乘到左边的变量上,并将结果赋给左边的变量。

    a := 2
    b := 5
    a *= b  // 相当于 a = a * b,结果为 10
    
    • 1
    • 2
    • 3

    除法赋值运算符(/=

    除法赋值运算符用于将左边的变量除以右边的值,并将结果赋给左边的变量。

    a := 15
    b := 3
    a /= b  // 相当于 a = a / b,结果为 5
    
    • 1
    • 2
    • 3

    取余赋值运算符(%=

    取余赋值运算符用于将左边的变量除以右边的值得到的余数赋给左边的变量。

    a := 17
    b := 4
    a %= b  // 相当于 a = a % b,结果为 1
    
    • 1
    • 2
    • 3

    运算符的优先级与结合性

    在表达式中,不同的运算符具有不同的优先级和结合性。优先级决定了哪个运算符会被优先计算,而结合性决定了相同优先级的运算符计算的顺序。在编写表达式时,可以使用括号来明确指定运算的优先级。

    以下是常见运算符按照从高到低的优先级排列的表格:

    运算符描述结合性
    ()圆括号从左到右
    ^按位异或从左到右
    */%乘法、除法、取余从左到右
    +-加法、减法从左到右
    <<>>左移、右移从左到右
    &按位与从左到右
    &^按位清零从左到右
    |按位或从左到右
    &&逻辑与从左到右
    ||逻辑或从左到右
    ==!=等于、不等于从左到右
    <<=>>=大于、大于等于、小于、小于等于从左到右
    =+=-=*=/=%=&=
    |=^=<<=>>=
    赋值运算符从右到左
    :标签(用于 switch 语句)从左到右
    ?条件表达式(三目运算符)从右到左
    ;语句分隔符从左到右

    注意:在表达式中,括号可以用来改变运算符的优先级。

    请根据实际需求合理使用运算符,并注意运算符的优先级和结合性,以确保表达式的计算结果符合预期。

    运算符的应用与实例

    以下是运算符在实际编程中的示例应用:

    数值计算

    运算符用于实现数值计算,如加法、减法、乘法、除法等。

    a := 10
    b := 3
    sum := a + b       // 加法
    difference := a - b  // 减法
    product := a * b    // 乘法
    quotient := a / b   // 除法
    remainder := a % b  // 取余
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    条件判断

    关系运算符和逻辑运算符用于实现条件判断和逻辑操作。

    a := 5
    b := 7
    isEqual := a == b         // 判断相等
    isGreater := a > b        // 判断大于
    isTrue := isEqual && isGreater  // 与运算
    
    • 1
    • 2
    • 3
    • 4
    • 5

    位操作

    位运算符用于处理二进制位,如按位与、按位或、按位异或等。

    a := 5   // 二进制 0101
    b := 3   // 二进制 0011
    bitAnd := a & b   // 按位与,结果为 0001,即 1
    bitOr := a | b    // 按位或,结果为 0111,即 7
    bitXor := a ^ b   // 按位异或,结果为 0110,即 6
    
    • 1
    • 2
    • 3
    • 4
    • 5

    赋值操作

    赋值运算符用于给变量赋值,同时进行运算。

    a := 8
    b := 3
    a += b   // 加法赋值,结果为 11
    b *= a   // 乘法赋值,结果为 33
    
    • 1
    • 2
    • 3
    • 4

    最佳实践与总结

    运算符是编程中不可或缺的工具,它们使得计算机能够进行数学运算和逻辑决策。本篇博客深入探讨了Go语言中的各种运算符,包括算术运算符、关系运算符、逻辑运算符、位运算符以及赋值运算符。通过了解每种运算符的功能、用法以及在实际编程中的应用,您可以更好地掌握运算符的使用技巧,编写出高效、准确的Go代码。

    在编程过程中,要根据实际需求选择适当的运算符,合理运用运算符的优先级和结合性,以确保表达式的计算结果正确无误。通过深入学习运算符的知识,您将更好地理解Go语言的基本运算原理,为编写出高质量、功能完善的程序奠定坚实基础。不断探索和实践运算符的用法,将有助于您成为更优秀的Go开发者,为编程世界贡献更多出色的作品。

  • 相关阅读:
    win11开机动画关闭教程
    算法设计与分析-8593 最大覆盖问题
    MySQL explain结果Extra中"Using Index"与"Using where; Using index"区别探究
    python零基础看完必会安装和配置环境,文末附下载安装包
    【华为机试真题 JAVA】DNA序列-100
    phpstorm运行php项目步骤
    php表单提交并自动发送邮件给某个邮箱(示例源码下载)
    AQS中 state 和 waitStatus 分别是干什么的?
    Linux-3-进程创建与进程状态
    跟着团子学SAP FICO:收入确认方式-完工合同法 (Completed Contract Method)KKA2/CJ88
  • 原文地址:https://blog.csdn.net/qq_21484461/article/details/132416160