Go 运算符

Go语言中的运算符是用于对数据进行操作的符号或关键字,包括算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符等。在本篇博客中,我们将介绍Go语言中的所有运算符,并给出它们的示例。

一、算术运算符

算术运算符用于对数据进行算术运算,包括加、减、乘、除、取模等。Go语言中的算术运算符如下:

运算符描述示例
+加法运算2 + 3 = 5,“hello” + “world” = “helloworld”
-减法运算5 - 2 = 3,2.5 - 1.2 = 1.3
*乘法运算2 * 3 = 6,3.5 * 2.5 = 8.75
/除法运算6 / 3 = 2,10.5 / 3.0 = 3.5
%取模运算10 % 3 = 1,12.5 % 3 = 0.5

二、赋值运算符

赋值运算符用于将一个值赋给一个变量,包括简单赋值、加等于、减等于、乘等于、除等于、取模等于等。Go语言中的赋值运算符如下:

运算符描述示例
=简单赋值a = 10,b = “hello”
+=加等于a += 5,b += “world”,等价于 a = a + 5,b = b + “world”
-=减等于a -= 5,等价于 a = a - 5
*=乘等于a *= 2,等价于 a = a * 2
/=除等于a /= 3,等价于 a = a / 3
%=取模等于a %= 2,等价于 a = a % 2
<<=左移并赋值a <<= 2,等价于 a = a << 2
>>=右移并赋值a >>= 2,等价于 a = a >> 2
&=按位与并赋值a &= 5,等价于 a = a & 5
^=按位异或并赋值a ^= 5,等价于 a = a ^ 5
|=按位或并赋值a |= 5,等价于 a = a | 5

三、比较运算符

比较运算符用于比较两个值的大小或相等性,返回布尔值。Go语言中的比较运算符如下:

运算符描述示例
==相等运算符,如果两个操作数相等,则返回true2 == 2,“hello” == “hello”,true == true
!=不相等运算符,如果两个操作数不相等,则返回true2 != 3,“hello” != “world”,true != false
>大于运算符,如果左操作数大于右操作数,则返回true3 > 2,“world” > “hello”,true > false
<小于运算符,如果左操作数小于右操作数,则返回true2 < 3,“hello” < “world”,false < true
>=大于等于运算符,如果左操作数大于或等于右操作数,则返回true3 >= 2,“world” >= “hello”,true >= false
<=小于等于运算符,如果左操作数小于或等于右操作数,则返回true2 <= 3,“hello” <= “world”,false <= true

四、逻辑运算符

逻辑运算符用于对布尔值进行逻辑运算,包括逻辑与、逻辑或、逻辑非等。Go语言中的逻辑运算符如下:

运算符描述示例
&&逻辑与运算符true && false = false,5 > 2 && 3 > 1 = true
||逻辑或运算符true || false = true,5 > 2 || 3 < 1 = true
!逻辑非运算符!true = false,!(5 > 2) = false

五、位运算符

位运算符用于对二进制位进行操作,包括按位与、按位或、按位异或、左移、右移、按位非等。Go语言中的位运算符如下:

运算符描述示例
&按位与运算符5 & 3 = 1,101 & 011 = 001
|按位或运算符5 | 3 = 7,101 | 011 = 111
^按位异或运算符5 ^ 3 = 6,101 ^ 011 = 110
<<左移运算符5 << 2 = 20,101 << 2 = 10100
>>右移运算符5 >> 2 = 1,101 >> 2 = 1
~按位非运算符~5 = -6,~101 = -110

以上是Go语言中所有运算符的介绍以及示例,希望对你有所帮助。需要注意的是,运算符的优先级不同,对表达式的计算会产生不同的影响,因此在编写程序时需要注意运算符的优先级,避免出现意想不到的错误。

运算符优先级

在Go语言中,不同的运算符具有不同的优先级,优先级高的运算符会先进行计算。如果表达式中有多个运算符,则会按照优先级的顺序进行计算。如果优先级相同,则按照从左到右的顺序计算。下面是Go语言中各个运算符的优先级,从高到低:

运算符描述优先级
^按位异或7
* / %算术运算符6
+ -算术运算符5
<< >>移位运算符4
&按位与3
|按位或2
== !=比较运算符1
&&逻辑与0
||逻辑或-1

需要注意的是,赋值运算符的优先级较低,为所有运算符中最低的,因此在表达式中使用赋值运算符时需要注意优先级的问题,可以使用括号来明确优先级。

同时还需要注意的是,虽然运算符的优先级规定了它们的计算顺序,但是在实际编写程序时,为了避免出现歧义,建议使用括号来明确表达式的计算顺序,使表达式的含义更加清晰明确。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值