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;
是如何解决它,但是为什么呢? 最佳答案
您已声明它,但未初始化它。您需要为其设置一个值:
int specialFuncStart; // declare
specialFuncStart = 0; // initialize
int specialFuncStart = 0; // both
您的编译器认为有时候
specialFuncStart
不会被初始化,因为for
循环不必执行。