这就是我的方法
public int abc()
{
int x;
if(x > 100)
{
//Say ok
return x;//Causes compiler error
}
//if something more, x = some number
return x;//Causes compiler error
}
我在SO看到答案 - Java: "Local variable may not have been initialized" not intelligent enough?
但是,我仍然不确定为什么会发生这种错误。它是编译器错误而不是警告。因此,问题必须比“走一条安全路线”更严重。
答案 0 :(得分:5)
必须在访问本地变量之前对其进行初始化。这就是编译器错误的原因。
您应该首先访问if
语句时出错。