public double open() {
if (status.equalsIgnoreCase("Pending")) {
status = "Open";
if (startPrice <= 5) {
return 0.2;
} else if (startPrice > 5 && startPrice <= 20) {
return 0.5;
} else if (startPrice > 20 && startPrice <= 100) {
return 1;
} else if (startPrice > 100 && startPrice <= 250) {
return 2.5;
} else if (startPrice > 250) {
return 5;
}
} else if (!status.equals("Pending")) {
return -1;
}
}
你能解釋爲什麼編譯器不斷要求缺少返回語句。我怎麼能解決這個問題爲什麼我的代碼不斷要求丟失返回語句
status =「pending」 –
java沒有足夠的智能來知道你的2 if語句是詳盡無遺的。你真的需要明確地告訴它。據java知道,if和else可能是假的,然後它不知道該怎麼做。它必須返回一個double,但你沒有告訴它該做什麼。 – Cruncher