请教一个java运算符的问题
各位,
Java code
byte b = -1;
System.out.println(b>>>=10);
这段代码的输出为 -1
为什么是-1呢。。b>>>=10这个表达式含义是啥意思
------解决方案--------------------优先级 ,先直接输出了b的值,然后在做的b>>>10运算。
------解决方案--------------------
知道自增运算符么?
b+=1;
也即相当于:
b = (byte) (b+1);
你这个是 自右移运算符:
b>>>=10
也即相当于:
b = (byte) (b>>>10);
------解决方案--------------------对,移位运算。
这里很详细,参考学习下吧
http://biostar.blog.sohu.com/29997061.html