9.1 算术运算符
假设变量A=10,B=20,则:
运算符 | 描述 | 示例 |
---|---|---|
+ | 添加两个操作数 | A + B = 30 |
- | 从第一个操作数中减去第二个操作数 | A - B = 10 |
* | 将两个操作数相乘 | A * B = 200 |
/ | 将分子除以分母 | B / A = 2 |
% | 模数运算符,以及整数除法的余数 | B % A = 0 |
++ | 增加(递增)运算符,将整数值加一 | A++ = 11 |
– | 相减(递减)运算符,将整数值减一 | A— = 9 |
9.2 关系运算符
假设变量A=10,B=20,则:
运算符 | 描述 | 示例 |
---|---|---|
== | 检查两个操作数的值是否相等,如果相等,则条件为真。 | (A == B)结果为假 |
!= | 检查两个操作数的值是否相等,如果值不相等,则条件为真。 | (A != B)结果为真 |
> | 检查左操作数的值是否大于右操作数的值,如果是,则条件为真。 | (A > B)结果为假 |
< | 检查左操作数的值是否小于右操作数的值,如果是,则条件为真。 | (A < B)结果为真 |
>= | 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件为真。 | (A >= B)结果为假 |
<= | 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件为真。 | (A <= B)结果为真 |
9.3 逻辑运算符
假设变量A=1,B=0,则:
运算符 | 描述 | 示例 |
---|---|---|
&& | 逻辑AND运算符。如果两个操作数都不为零,则条件为真。 | (A && B)结果为真 |
|| |
逻辑OR运算符。如果两个操作数中的任何一个非零,则条件变为真。 | (A|| B) 结果为真 |
! | 逻辑非运算符。用于反转其操作数的逻辑状态。如果条件为真,则逻辑非运算符将为假。 | !(A && B) 结果为真 |
9.4 按位运算符
运算符 | 描述 | 示例 |
---|---|---|
& | 如果两个操作数中都存在二进制 AND 运算符,则将其复制到结果。 |
( A & B ) 结果为 12 , 也就是 0000 1100
|
! | 二进制 OR 运算符复制一个位,如果它存在于任一操作数。 |
( A | B ) 结果为 61 ,也就是 0011 1101
|
^ | 二进制 XOR 运算符复制位,如果它在一个操作数中设置,但不是在两个操作数中设置。 |
(A ^ B) 结果为 49 , 也就是 0011 0001
|
<< | 二进制左移位运算符。左操作数值向左移动由右操作数指定的位数。 |
A << 2 结果为 240 , 也就是 1111 0000
|
>> | 二进制右移运算符。左操作数值向右移动由右操作数指定位数。 |
A >> 2 结果为 15 , 也就是 0000 1111
|
9.5 其他运算符
运算符 | 描述 | 示例 |
---|---|---|
& | 返回变量的地址 |
&a 将给出变量 a 的实际地址。 |
* | 指向变量的指针 |
*a 是指向变量 a 的指针。 |
参考链接:Go语言运算符 - Go语言教程™