如何在 for 循环之外使用 boolean 值 hasDivisor?当我尝试编译这部分代码时,收到消息“无法从结果类型为 void 的方法返回值”
for (int i = 0; i < NumBox.length; i++)
{
if (NumBox[i] == 0)
continue;
boolean hasDivisor = false;
for (int j = 0; j < i; j++) {
if (NumBox[j] == 0)
continue;
if (NumBox[i] % NumBox[j] == 0) {
hasDivisor = true;
break;
}
}
return hasDivisor;
}
最佳答案
第一个问题:变量的范围仅限于声明它们的 block 。您的变量是在 for 循环内声明的,但您希望在循环外部使用它。在循环外部(即之前)声明它。
第二个问题:声明你的方法返回 boolean
- 从错误消息判断,它当前声明返回 void
关于java - "Cannot return a value from method whose result type is void",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22467617/