【发布时间】:2016-05-10 10:40:37
【问题描述】:
Java 相对较新,可能是一些愚蠢的问题。代码如下:
long a = 3232235521L;
long b = 192 * 16777216 + 168 * 65536 + 0 * 256 + 1;
System.out.println("a="+a);
System.out.println("b="+b);
输出:
a=3232235521
b=-1062731775
根据Java文档中long 2^63-1的最大值,即:9223372036854775807。所以对于b,没有溢出,为什么b不是3232235521?
【问题讨论】:
标签: java overflow long-integer