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 declaration

a = 0; // This is an initialization

int b = 1; // This is a declaration and initialization

因为未初始化变量,但a++for循环中增加了变量(例如),因此会收到错误消息。

Java原语具有默认值,但如下一位用户所述

当声明为类成员时,它们的默认值为零。局部变量没有默认值

以上是 Java-变量可能尚未初始化错误 的全部内容, 来源链接: utcz.com/qa/429577.html

回到顶部