我是Java課程的開始學生,所以這對你們來說可能看起來很愚蠢。這是代碼。If Else AssignmentOperator Issues - Java
class CyclingResult implements IEvent {
double time;
int finishOrder;
CyclingResult(double time, int finishOrder) {
this.time = time;
this.finishOrder = finishOrder;
}
public double pointsEarned() {
return if (this.finishOrder == 1) {
(this.time - 10);
} else if (this.finishOrder == 2) {
(this.time - 7);
} else if (this.finishOrder == 3) {
(this.time - 3);
} else {
this.time;
}
}
}
我弄一套5「錯誤:語法錯誤,插入‘AssignmentOperator表達’,以完整地表達」
我敢肯定,這是我的代碼去上一些愚蠢的事,但我的例子能發現是有點高於我的頭來找出差異。
'if'是一個語句,而不是一個表達式。所以它沒有價值。 –
您不能返回if(...)塊。有幾種方法可以解決這個問題。一個容易解釋的就是在「if(this ...)」之前刪除「return」並將「return」放在與之前相同的行上「(this.time - ...) – Savlon
我是什麼試圖做到這一點是基於這個時間產生一個「得分」,除非運動員在第一,第二或第三位,在這種情況下,你會從他們的分數中減去一點,就像打高爾夫球一樣。 編輯:您的修復工作,Savlon。非常感謝。我從來不會想到這一點。 – Whibble