用于连接多个条件,一般来讲就是关系表达式,最终的结果也是一个 bool 值。
运算符 | 说明 | 示例 |
---|---|---|
&& | 逻辑 AND 运算符。如果两边的操作数都是 True,则条件 True,否则为 False | (A && B) 为 False |
II | 逻辑 OR 运算符。如果两边的操作数有一个 True,则条件 True,否则为 False | (A II B) 为 True |
! | 逻辑 NOT 运算符。如果条件为 True,则逻辑 NOT 条件 False,否则为 True | !(A && B) 为 True |
相关案例:
package main
import "fmt"
func main() {
var a bool = true
var b bool = false
if a && b {
fmt.Printf("第一行 - 条件为 true \n")
}
if a || b {
fmt.Printf("第二行 - 条件为 true \n")
}
// 修改 a 和 b 的值
a = false
b = true
if a && b {
fmt.Printf("第三行 - 条件为 true \n")
} else {
fmt.Printf("第三行 - 条件为 false \n")
}
if !(a && b) {
fmt.Printf("第四行 - 条件为 true \n")
}
}
运算符 | 说明 | 示例 |
---|---|---|
& | 如果两个操作数中都存在二进制AND运算符,则将其复制到结果。 | (A&B)结果为12,也就是0000 1100 |
I | 二进制OR运算符复制一个位,如果它存在于任一操作数。 | (AIB)结果为61,也就是0011 1101 ^ 二进制XOR运算符复制位,如果它在一个操作数中设置,但不是在两个操作数中设置。 (A^B)结果为49,也就是0011 0001 |
<< | 二进制左移位运算符。左操作数值向左移动由右操作数指定的位数。 | A<<2结果为240,也就是1111 0000 |
>> | 二进制右移运算符。左操作数值向右移动由右操作数指定位数。 | A>>2结果为15,也就是0000 1111 |
运算符 | 说明 | 示例 |
---|---|---|
& | 返回变量的地址 | &a将给出变量a的实际地址。 |
* | 指向变量的指针 | *a是指向变量a的指针。 |