【发布时间】:2016-04-22 15:29:23
【问题描述】:
0 int specialFuncStart;
1 String[] specialFunctions= {"sum","ddx","integral"};
2 for(String element: specialFunctions){
3 specialFuncStart = finalMath.lastIndexOf("sum");
4 }
5 while (specialFuncStart != -1) { code }
为什么line 5 说specialFuncStart 可能尚未初始化?字符串是最终的且固定的,因此 for 循环将始终运行。编译器不知道还是我错过了什么?我明白初始化specialFuncStart = -1;是怎么解决的,但是为什么呢?
【问题讨论】:
-
变量specialFuncStar在哪里声明?
-
在该声明中添加一个 =0。由于您的变量仅在 for 循环范围内初始化,编译器认为 for 循环可能并不总是运行,并且变量可能并不总是被初始化。
标签: java for-loop while-loop compiler-errors compiler-warnings