首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

java << >> >>> 的用法 以及能给一个解释不,没看懂啊解决思路

2012-10-15 
java 的用法 以及能给一个解释不,没看懂啊!代码贴上Java codepackage day21public class chartoin

java << >> >>> 的用法 以及能给一个解释不,没看懂啊!
代码贴上 

Java code
package day21;public class chartoint {    int i = 7 ;    int j = -7;    public static void main(String []args){        System.out.println(a.i>>3);        System.out.println(a.j>>>28);        System.out.println(a.j>>2);        System.out.println(a.j<<2);    }}

结果是 0 15 -2 -28 为什么啊 !!!

[解决办法]
7 二进制表示为:
 0000 0000 0000 0000 0000 0000 0000 0111
>>带符号右移。移3位为:(高位0表示正数)
 0000 0000 0000 0000 0000 0000 0000 0000
10进制为0。

-7 二进制表示:
 1111 1111 1111 1111 1111 1111 1111 1001
>>> 是无符号右移(空出高位补零)移28位后是:
 0000 0000 0000 0000 0000 0000 0000 1111
10进制表示15。

-7>>2 是:
 1111 1111 1111 1111 1111 1111 1111 1110
10进制为 -2。
-7<<2 是(右边补零)
 1111 1111 1111 1111 1111 1111 1110 0100
10进制是-28。


热点排行
Bad Request.