Java基础(5):位运算的使用方式、运算符优先级的图示

         在Java中,位运算常用的就是移位运算了。所以会按照个人的理解去回顾这个知识点,不会太深入。如果对位运算感兴趣的可以去其他博客搜搜,讲解非常详细。
 移位运算所进行的操作是在二进制的基础之上对数字进行平移,有左移运算和右移运算。
给一个代码例子:
//测试右移位运算 
//结果是1 和 0
System.out.println(6>>2); //6右移2位
System.out.println(8>>5); //8右移5位

本质是二进制的运算,所以我们将6 和 8转成二进制。

如果不懂二进制也可以使用电脑自带的计算器,改成程序员用的就可以了。但建议一定要学会二进制,并且熟练与八进制和十六进制的转换,会让你更明白计算机原理。

进入正题:
//6的二进制
0000 0000 0110

0000 0000 0001 //右移2位

//1 乘以2的0次方 输出1

//8的二进制
0000 0000 1000
0000 0000 0000 //右移5位

//0乘以2的0次方 输出0

//测试左移运算
//结果为128 192
System.out.println(4<<5);
System.out.println(3<<6);
//4的二进制
0000 0100
1000 0000 //左移5位
//1乘以2的7次方 输出128 

//3的二进制
0000 0011
1100 0000 //左移6位

//1乘以2的7次方 + 1乘以2的6次方 输出192


上面是以二进制的平移方式来得出的,还有取巧的方式,计算2的次方非常迅速。

就是:左移几位就乘以2的几次方 , 右移几位就除以2的几次方

以 4<<5 为例   : 就是4 乘以 2 的5次方 4 * 32 可以很快得出结果128

10>>2 : 10除以 2的2次方  10/4 = 2

要想得到2的10次方 只需要 1<<10 即可。

--------------------------------------------------------------------------------------------------------

关于下图的Java运算符,不需要去记优先级,使用括号运算符能更好的增加可读性。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值