2 回答

TA貢獻(xiàn)1777條經(jīng)驗(yàn) 獲得超10個贊
使用此代碼
public static boolean shouldWakeUp(boolean barking, int hourOfTheDay) {
if (barking) {
if (hourOfTheDay==8 || hourOfTheDay==7 || hourOfTheDay==6 || hourOfTheDay==5 || hourOfTheDay==4 || hourOfTheDay==3 || hourOfTheDay==2 || hourOfTheDay==1 || hourOfTheDay==23 || hourOfTheDay==00) {
return true;
} else {
return false;
}
if (hourOfTheDay < 0 || hourOfTheDay > 23)
return false;
}
}
為了進(jìn)行比較,您必須使用而不是===

TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個贊
語句中的條件應(yīng)給出布爾結(jié)果。Java 使用布爾結(jié)果(返回值)來操作條件。
在代碼中,您使用的是“=”賦值運(yùn)算符,它不給出預(yù)期的返回值。
使用“==”可以解決代碼中的問題,如Ajmal在其中一個答案中所建議的那樣。
但是,在編輯后,您的代碼將在修復(fù)后具有無法訪問的語句,在這種情況下,請嘗試以下操作:
if (barking
&& (hourOfTheDay == 8 || hourOfTheDay == 7 || hourOfTheDay == 6
|| hourOfTheDay == 5 || hourOfTheDay == 4
|| hourOfTheDay == 3 || hourOfTheDay == 2
|| hourOfTheDay == 1 || hourOfTheDay == 23 || hourOfTheDay == 00)) {
return true;
} else if (hourOfTheDay < 0 || hourOfTheDay > 23)
return false;
else {
return false;
}
添加回答
舉報(bào)