【发布时间】:2018-03-13 03:06:35
【问题描述】:
我只是想计算这三个值,但不确定我的 else 语句应该放什么。我放了 return 但它一直给我一个不兼容的类型错误。我曾尝试将其设置为 null 和 NaN,但它表明我无法在类型为 double 的情况下做到这一点。任何帮助表示赞赏。
public static double getE(int i) {
double e = 1, x=1;
for(i = 1; i <= 100000; i++){
x=x/i;
if (i == 10000) {
return x;
}
else if (i == 20000) {
return x;
}
else if (i == 100000) {
return x;
}
return;
}
}
【问题讨论】:
-
返回一个
Double,这样就可以返回null -
好奇:传入参数
i有什么意义,然后你马上把值扔掉? -
更好奇:当
i达到 10000 时,您如何期望这两个else if永远为真,这使得 @987654327 不可能@ 达到 20000 和 100000?或者实际上,由于你return无条件地在循环结束时,i永远不会超过 1,所以即使是if也是没有意义的。 -
通过 "将其设置为 NaN" 你的意思是你尝试了
return Double.NaN;?因为那应该可以正常工作。
标签: java if-statement return incompatibletypeerror