go☞003运算符

阅读量: zyh 2020-10-03 21:10:44
Categories: > Tags:

前言

常见的运算符就不说了,学过数学的都会。

逻辑运算符

A && B A和B都为真,则真

A || B A和B任意为真,则为真

!A A为真,则为假

当上述条件为真时,则执行下一步代码

位运算符

将整数转为二进制后进行运算

二进制数:0为假,1为真

例如:

a,b := 2,4

c := a & b按位与,按照位数分别进行运算

a: 0 1 0
b: 1 0 0
c: 0 0 0

因此,最终 c = 0

c := a | b按位或,按照位数分别进行运算

a: 0 1 0
b: 1 0 0
c: 1 1 0

因此,最终 c = 6

c := a ^ b按位异或,按照位数分别进行异或运算

异或:相同为0,不同为1

a: 0 1 0
b: 1 0 0
c: 1 1 0

因此,最终 c = 6

c := a &^ b

则c等于将a中ab都为1的位写为0后的新a

a: 0 1 0
b: 1 0 0
c: 0 1 0  # a中没有ab都为1的位,因此c的值依然是a

c := a<<b左移运算,即a*2的b次方。c等于32

c := a>>b右移运算,即a/2的b次方,c等于0