Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
这个Java代码会发生什么??或者为什么?_Java_Compiler Errors - Fatal编程技术网

这个Java代码会发生什么??或者为什么?

这个Java代码会发生什么??或者为什么?,java,compiler-errors,Java,Compiler Errors,这应该行得通,但为什么不行呢 public class Main { public static void main(String[] args) { long num; num = 3000000000; //3 billion System.out.println("num is: " +num); } } 输出是一个错误,表示:整数太大。这对我来说很奇怪,因为即使我声明num为long而不是int Ja

这应该行得通,但为什么不行呢

public class Main {
    public static void main(String[] args) { 
        long num;
        num = 3000000000; //3 billion
        System.out.println("num is: " +num);
    }
}
输出是一个错误,表示:整数太大。这对我来说很奇怪,因为即使我声明
num
long
而不是
int


Java将其视为
int
。为什么?

num
是一个
long
,但是
3000000000
是一个
int
。在末尾添加一个
L
,使其成为
long
,如下
30000000000l
。谢谢您的回答