位运算符与幂运算
位运算符
-
操作数都是二进制数
-
按位与(&):两个操作数的对应位都为1,结果才为1,否则结果为0
-
按位或(|):两个操作数的对应位都为0,结果才为0,否则结果为1
-
按位取反(~):本操作数的该位为0,结果为1,否则结果为0
-
按位异或(^):两个操作数的对应位相同,结果为0,否则结果为18
-
移位操作:
-
左移(<<):y<<n相当于y*(2的n次幂)。
-
右移(>>):y>>n相当于y/(2的n次幂)。
-
一道经典例题:怎样计算2*8效率最高?
答:2*8=2*2*2*2=2<<3。
-
幂运算
幂运算没有专门的运算符,需要借助Math类中的pow方法,Math.pow(x,y)=x的y次幂
double e = Math.pow(2,4);
System.out.println(e); //e=16