在java中为什么编译器不允许使用以下代码?
public class Test {
public static void main(String[] args) {
int x;
int x = 4;// the error is generated here
}
}
答案 0 :(得分:12)
因为第二个
int x = 4;
尝试创建int类型的变量名“x”,但此变量已存在(在上一行中创建)
可能你想这样做:
int x;
x = 4;
(不在第二行使用int)
将值4分配给x。
甚至更好:
int x = 4;
创建int类型的变量x并赋值4.
答案 1 :(得分:11)
您已声明了两个int
个变量;两者都命名为x
。这是不允许的。
尝试:
public static void main(String[] args) {
int x;
x = 4;
}