Java-变量可能尚未初始化错误
当我尝试编译时:
public static Rand searchCount (int[] x) {
int a ;
int b ;
...
for (int l= 0; l<x.length; l++)
{
if (x[l] == 0)
a++ ;
else if (x[l] == 1)
b++ ;
}
...
}
我得到这些错误:
Rand.java:72: variable a might not have been initialized a++ ;
^
Rand.java:74: variable b might not have been initialized
b++ ;
^
2 errors
在我看来,我在方法的顶部初始化了它们。怎么了
回答:
你声明了它们,但没有初始化它们。初始化它们是将它们设置为等于一个值:
int a; // This is a declarationa = 0; // This is an initialization
int b = 1; // This is a declaration and initialization
因为未初始化变量,但a++
在for
循环中增加了变量(例如),因此会收到错误消息。
Java原语具有默认值,但如下一位用户所述
当声明为类成员时,它们的默认值为零。局部变量没有默认值
以上是 Java-变量可能尚未初始化错误 的全部内容, 来源链接: utcz.com/qa/429577.html