java中长整型定义intx=0x80000000;System.out.println(x);longy=0x100080000000;System.out.println(y);这样定义为什么不行编译时候错误:test.java:17:过大的整数:100080000000longy=0x100080000000;long不是64位吗,这样y应该
java中长整型定义
intx=0x80000000;
System.out.println(x);
longy=0x100080000000;
System.out.println(y);
这样定义为什么不行
编译时候错误:
test.java:17:过大的整数:100080000000
longy=0x100080000000;
long不是64位吗,这样y应该才48位啊~
还有0x8000,0000到底是多少
写成二进制不是应该
1000,0000,0000,0000,0000,0000,0000,0000
如果最高位算符号位的话,那不是变成0了?
-2147483648是怎么来的?
0x7fff,ffff是2147483647难道十六进制加了1换成十进制也加1在变符号?