可能重复:
为什么会出错?
下面的 3 个方法做的事情完全相同,显然返回 true。
但是,前两个编译但第三个不编译(“缺少返回语句”)。
语言规范的哪一部分规定了这种行为?
boolean returnTrue_1() { // returns true
return true;
}
boolean returnTrue_2() { // returns true
for (int i = 0; ; i++) { return true; }
}
boolean returnTrue_3() { // "missing return statement"
for (int i = 0; i < 1; i++) { return true; }
}