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