class weiyi
{
public static void main(String[] args)
{
int a=-17,a1,a2;
a1=a>>>4;
System.out.println(a);
System.out.println(a1);
}
}JAVA的所有数的有符号左移和右移都能得出预计的结果,而负数的五符号右移为什么的不出预计的结果呢?比如上面代码,a=-17,则在计算机中的表示应该为11101111,无符号右移四位 ,应该是00001110,编译出结果应该是12,可编译出来却是 268435454,这是什么原因?我用的是JAVA1.6.0_05。
http://topic.csdn.net/t/20060304/17/4592722.html,这里有个解释 ,我没有看明白。
{
public static void main(String[] args)
{
int a=-17,a1,a2;
a1=a>>>4;
System.out.println(a);
System.out.println(a1);
}
}JAVA的所有数的有符号左移和右移都能得出预计的结果,而负数的五符号右移为什么的不出预计的结果呢?比如上面代码,a=-17,则在计算机中的表示应该为11101111,无符号右移四位 ,应该是00001110,编译出结果应该是12,可编译出来却是 268435454,这是什么原因?我用的是JAVA1.6.0_05。
http://topic.csdn.net/t/20060304/17/4592722.html,这里有个解释 ,我没有看明白。
解决方案 »
- spring mvc 后台数据存储到session 避免多个人同时操作出现信息不可用 如何做?
- Jboss启动时提示错误,无法解析server目录下的文件
- JAVA的接口声明变量
- 马上想学JSP 要问下JSP 中会用到J2SE哪些特性?我想再着重复习一下
- 解决这种乱码问题立即给分
- 一段java代码问题
- 请大家帮忙,我刚学JAVA遇到一个问题?
- 如何得到光驱盘符?
- 各位高手,小弟在安装Java 2 SDK Standard Edition v1.3时出错了。是怎么回事?
- 怎么做一个精确的计时器
- 求助,简单的计算问题
- 我查询的页面打开要6秒多钟,有没有现成的点击查询出来等待页面,数据出来以后,框框就没有了?
-17〉〉〉4 = 00001111 11111111 11111111 11111110 = 268435454