java 局部变量的作用域问题

tang_123_ tang_123_ 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

public class LocalVarTest {

public static void main(String[] args) {
LocalVar var = new LocalVar();
var.doNext();
}

}

class LocalVar{
private Scorer[] scorers;
private boolean more;
private int lastDoc;

public boolean doNext(){
int first=0;
Scorer lastScorer = scorers[scorers.length-1];
Scorer firstScorer;
while (A.isTrue(more && (firstScorer=scorers[first]).doc() < (lastDoc=lastScorer.doc()), 1, 2)) {
more = firstScorer.skipTo(lastDoc);
lastScorer = firstScorer;
first = (first == (scorers.length-1)) ? 0 : first+1;
}
return more;
}
}

class A{
private static int[] a = new int[100];

public static boolean isTrue(boolean isA, int i, int j){
a[i] = j;
return isA;
}
}

class Scorer{

public int doc() {

return 0;
}

public boolean skipTo(int lastDoc) {

return false;
}
}


一直报 The local variable firstScorer may not have been initialized 错误,如果把 firstScorer 赋个初值,如:
firstScorer = null
就没有问题了,现在问题是代码是动态的,不方便赋值,不知有什么方法解决?谢谢!
...全文

相关推荐

评论 9
收藏 已收藏
分享
返回顶部
tang_123_
Java SE 62,620 成员 307,251 内容