IntTest.java:3: 错误: 整数太大
long c = 2147483648;
^
1 个错误
上述报错的源代码为:
public class IntTest{
public static void main(String[] args){
long c = 2147483648;
System.out.println(c);
}
}
这个问题的本质是:
Java在任何情况下,处理整数型的“字面量(数据)”时,默认会将字面量当做int型处理。
换句话说,就是所有在java代码中出现的数字,Java会默认为int型。
在上面的语句:
long c = 2147483648;
Java程序会优先处理右侧的整数,因为默认这个整数是int型,所以这个数字超过了int型数字的最大值,系统就会报出“整数太大”的错误。
如何解决呢?
long c = 2147483648L;
在整数后面添加字母L,告诉Java这个整数是long型,系统就不报错了。
其他的情况类似。