JAVA位运算符


一:按位与(&)

       类似and的作用,要求计算两边都是二建制数 

       例如 0&1 = 0,1&0=0,1&1=1 两边都是1对应的结果才是1

       System.out.println(8&4);输出结果是什么呢

       首先这里的8和4都是10进制数转化成对应的二进制

       8=0000 1000 ,4=0000 0100

       所以相当于00001000&00001000 = 0000 0000

       所以输出的结果应该是0

      

       System.out.println(037|037);

       这里的037是8进制(0开头为八进制数)的转化为二进制是

       037 = 11111

       所以相当于11111&11111= 11111

       输出的结果是把二进制又转化为10进制所以结果就是31


二:按位或(|)

       类似or的作用,要求计算两边都是二建制数 

       例如 0&1 = 1,1&0=1,0&0=0 两边只要有1对应的结果就是1

       System.out.println(8|4);

       8和4的10进制数转化为二进制为

       8=0000 1000 ,4=0000 0100

       所以相当于00001000|00001000 = 0000 1100

        转化为10进制输出因为是:12

           

http://wenda.so.com/q/1364234023060247

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值