Java中位运算符

1"按位与"运算符    '&'  
双目运算符
运算法则:,如果两个整型数据a,b对应位都是1,则结果位才是1,否则是0。如果两个操作数的精度不同,则结果的精度与精度高的操作数相同。
2、”按位或“运算符  '|'
双目运算符
运算法则:如果两个操作数对应位都是0,则结果位才是0,否则为1.如果两个操作数的精度不同,则结果的精度与精度高的操作数相同。
3、”按位取反“运算符  '~'
单目运算符
运算法则:将操作数二进制中的1改为00修改为1.
4、”按位异或“运算符  ’^‘
双目运算符
运算法则:当两个操作数的二进制数表示相同(同时为0或同时为1)时,结果为0,否则为1.若两个操作数的精度不同,则结果的精度与精度高的操作数相同。

5、移位操作

(1)<<:左移
含义:将运算符左边的操作数的二进制数据,按照运算符右边操作数指定的位数向左移动,右移空的部分补0.
(2)>>:右移
含义:若最高位是0,则右移空的位就填入0;
	 若最高位是1,则右移空的位就填1
(3)>>>:无符号右移
含义:无论最高位是0还是1,左侧被移空的高位都填入0

注意:移位运算符使用的数据类型有byte,short,char,int 和long
位运算符除了"按位与"和"按位或"运算符外,其他只能用于处理整数的操作数

移位可以实现整数除以或乘以2^n的效果。例如y<<2与y*2的2次方相同;
y>>1的结果与y/(2的1次方)结果相同。总之,一个数左移n位,就是将这个数乘以2的n次方,一个数右移n位,就是将这个数除以2的n次方。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值