嘿,为 uni 做 Java 作业的伙计们,为什么这行不通?
if ( i <=39998)
String digit = pictureFile.substring(i, i+1);
else
String digit = pictureFile.substring(39998,39999);
出现以下错误信息:
最佳答案
你写的是语法错误,因为if
或 else
没有花括号中的代码块只能接受语句,不能接受变量声明。
这会编译,但毫无意义:
if (i <=39998) { // WARNING: unused variable
String digit = pictureFile.substring(i, i+1);
} else {
String digit = pictureFile.substring(39998,39999);
}
在分支内部声明变量是没有意义的,因为它在 if
之外是不可见的。应该是
String digit;
if ( i <=39998)
digit = pictureFile.substring(i, i+1);
else
digit = pictureFile.substring(39998,39999);
或
String digit = (i <= 39998)
? pictureFile.substring(i, i+1)
: pictureFile.substring(39998,39999);
关于java - Else 没有 if,但真的不清楚为什么,还有另一个我想看的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27029898/