-1

这就是我的方法的样子

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 上看到了一个答案:“局部变量可能尚未初始化”不够智能?

但是,我仍然不确定为什么会发生此错误。它是编译器错误而不是警告。所以,问题一定是比“走安全路线”更严重的问题。

4

1 回答 1

5

局部变量在被访问之前必须被初始化。这就是出现编译器错误的原因。

您应该在if第一次访问它的语句中出现错误。

于 2013-01-20T08:06:13.020 回答