if(i!=0 && i==-i)
{
System.out.println(i);
}
答案是int i=integer.Min_Value
{
System.out.println(i);
}
答案是int i=integer.Min_Value
解决方案 »
- 請大家幫幫忙啦
- 请教关于Java执行Oracle存储过程时参数为BLOB的问题!
- 大家一定要回我哦???
- 江糊告急!为什么我的applet出来是乱码???
- 用java应该怎么从数据库中读数据到图形界面呀(用单独javabean连接吗) 触摸屏软件开发(旅游方面的)急!急!! 高手来吧 大家up有分且
- 加密后的xml文件进行解密遇到的问题
- 关于jdbc与sql server2000在jar文件中连接的问题。
- 如何使用j2sdk1.4.0
- 请教scjp中的问题
- ScrollPane中的控件大小调整时,如何使ScrollPane也动态调整??
- 在servlet中建立表单显示list的东西让回返回到JSP中。
- JAVA记事本 侦听文本内容吗
public class Test{
public static void main(String[] args){
int i = Integer.MIN_VALUE;
System.out.println(Integer.toBinaryString(i));
System.out.println(Integer.toBinaryString(-i));
//负数的二进制表示是正数取反再加1.
//所以成立
}
}
1000 0000 0000 0000 0000 0000 0000 0000
在计算机的运算中,“-”(前缀)运算表示各二制位取反再加1.
1000 0000 0000 0000 0000 0000 0000 0000 Integer.MIN_VALUE
取反 0111 1111 1111 1111 1111 1111 1111 1111 (取反之后变成了Integer.MAX_VALUE)
加1 1000 0000 0000 0000 0000 0000 0000 0000 -Integer.MIN_VALUE(与原来的结果一样)