【go语言学习】运算符

运算符用于在程序运行时执行数学或逻辑运算。
表达式:a = b + c
其中:a,b,c叫操作数
=,+就是运算符

一、算数运算符

运算符 描述
+ 相加
- 相减
* 相乘
/ 相除
% 求余

注意:在go语言中++--是单独的语句,不能算作运算符,不支持在表达式中参与运算。

二、关系运算符

运算符 描述
> 如果左边的值大于右边的值,则返回true,否则返回false
< 如果左边的值小于右边的值,则返回true,否则返回false
>= 如果左边的值大于或等于右边的值,则返回true,否则返回false
<= 如果左边的值小于或等于右边的值,则返回true,否则返回false
== 如果左边的值等于右边的值,则返回true,否则返回false
!= 如果左边的值不等于右边的值,则返回true,否则返回false

三、逻辑运算符

运算符 描述
&& 逻辑与AND,都truetrue,一falsefalse
|| 逻辑或OR,都falsefalse,一truetrue
! 逻辑非NOT,条件为true则为false,否则为true

四、位运算

位运算符对整数在内存中的二进制位进行操作。

运算符 描述 示例A:1101,B:1001
& 与运算,全1才1,否则为0 A&B = 1001
| 或运算,有1则1,否则为0 A|B = 1101
^ 异或运算。二元a^b相同为0,不同为1;一元^a按位取反 A^B = 0100
&^ 位清空。a&^b看b的值,为0则取a对应位上的数值,为1则0 A&^B = 0100
<< 左移n位,高位丢弃,低位补0 A<<2 = 0100
>> 右移n位,低位丢弃,高位补0 A>>2 = 0011

五、赋值运算

运算符 描述
= 赋值
+= 相加后赋值
-= 相减后赋值
*= 相乘后赋值
/= 相除后赋值
%= 求余后赋值
<<= 左移后赋值
>>= 右移后赋值
&= 按位与后赋值
|= 按位或后赋值
^= 按位异或后赋值

六、运算符优先级

由上至下代表优先级由高到低

优先级 运算符
7 ~ ! ++ --
6 * / % << >> & &^
5 + - ^
4 == != < <= >= >
3 <-
2 &&
1 ||
可以使用括号来临时提升某个表达式的整体运算优先级。
原文地址:https://www.cnblogs.com/everydawn/p/13870328.html