位运算符>>>有何区别?

如题所述

两者只有一个区别,即作用不同。

1、>> 表示右移,如果该数为正,则高位补0,若为负数,则高位补1。如:int i=15; i>>2的结果是3,移出的部分将被抛弃。

转为二进制的形式可能更好理解,0000 1111(15)右移2位的结果是0000 0011(3),0001 1010(18)右移3位的结果是0000 0011(3)。

java中测试代码如下:

2、>>>表示无符号右移,也叫逻辑右移,即若该数为正,则高位补0,而若该数为负数,则右移后高位同样补0。

按二进制形式把所有的数字向右移动对应巍峨位数,低位移出(舍弃),高位的空位补零。对于正数来说和带符号右移相同,对于负数来说不同。其他结构和>>相似。

测试代码如下:

扩展资料:

一、其他位运算符:

二、运算符之间,按优先级顺序排列为:

1:~;

2:<<、>>;

3:&;

4:^;

5:|;

6:&=、^=、|=、<<=、>>=。

参考资料来源:百度百科--位运算符

参考资料来源:百度百科-->>

温馨提示:内容为网友见解,仅供参考
无其他回答

位运算符>>>有何区别?
两者只有一个区别,即作用不同。1、>> 表示右移,如果该数为正,则高位补0,若为负数,则高位补1。如:int i=15; i>>2的结果是3,移出的部分将被抛弃。转为二进制的形式可能更好理解,0000 1111(15)右移2位的结果是0000 0011(3),0001 1010(18)右移3位的结果是0000 0011(3)。java中...

C语言中>>>和>>>的区别是什么啊?
C语言中的>>和<<分别是左移运算符和右移运算符,用于整数在二进制形式的移位运算。1、左移运算符(<<)规则:按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零。语法格式:需要移位的数字 << 移位的次数,例如: 3 << 2,则是将数字3左移2位。数学意义:在数字...

位运算符号<和>的区别?
C语言中<< 代表左移运算符,>> 代表右移运算符,位移位运算符是将数据看成二进制数,对其进行向左或向右移动若干位的运算。<< 代表左移运算符:左移运算符用来将一个数的各二进制位全部左移若干位,移动的位数由右操作数指定,右操作数必须是非负值,其右边空出的位用0填补,高位左移溢出则舍弃...

Java 中“>>”和“>>>”有什么区别?
>>表示右移,如果该数为正,则高位补0,若为负数,则高位补1;>>>表示无符号右移,也叫逻辑右移,即若该数为正,则高位补0,而若该数为负数,则右移后高位同样补0。表达式为:result = exp1 >> exp2;result = exp2 >>> exp2;表示把数exp1向右移动exp2位。例如:res = 20 >> 2;2...

vb中>>>和>>>的区别是什么?
1、>>表示是带符号的右移:按照二进制把数字右移指定数位,高位如符号位为正补零,符号位负补一,低位直接移除 2、>>>表示无符号的右移:按照二进制把数字右移指定数位,高位直接补零,低位移除。

“>”、“>”有什么区别?
~,>>都是用在位运算里。~是取反运算符,比如原来是0 ~0就是1.>>是右移运算符 相当于原来的0.5倍 ::是属于的意思。在面向对象的语言中用。二进制中第一位为符号位,0代表正数,1代表负数,如 0000 0001 是+1,1000 0001 是-1。系统运算补码取反时符号位不变,手动用运算符取反时符号...

java中>> 和 >>>的区别,为什么没有<<<
一、>> 和 >>>的区别就是有无符号的区别:右移运算符>>(有符号)用来将一个数的各二进制位全部右移若干位.例如:a = a>>2,使a的各二进制位右移两位,移到右端的低位被舍弃,最高位则移入原来高位的值。如:a = 00110111,则a>>2=00001101,b=11010011,则b>>2 = 11110100。无符号右移...

java "">>>"什么意思 比如 8>>>2
与>> 的意义类似,即将相应二进制数右移,高位补零。 区别在于>> 是有符号右移而>>>是无符号右移(把符号位一起移了),可以使用Integer.toBinaryString(int i)来看01比特,打印出来你就明白了。

java中>和>>的区别?
“有符号”右移位运算符使用了“符号扩展”:若值为正,则在高位插入0;若值为负,则在高位插入1。Java也添加了一种“无符号”右移位运算符(>>>),它使用了“零扩展”:无论正负,都在高位插入0。这一运算符是C或C++没有的。举例:4 >> 2 4\/(2*2) = 1 ...

三个“>>>”什么意思? 2个“>>”什么意思 有例子说明最好 谢谢啦_百度...
在Java中,“>>”、">>>"都是位运算符。“>>”为右移,“>>>”为无符号右移。例如:4>>2=1,即将4转换为二进制0100,右移两位变为0001。有符合右移(右移)与无符号右移的区别在于移位后填充的数字不一样。正数右移,缺位填充0,负数则填充0;而正负数无符号右移都填充0 ...

相似回答
大家正在搜