簡體   English   中英

為什么else在此if語句中運行?

[英]Why does the else run in this if statement?

if (finalDistance > 10) {
    dmgMulti = dmgMulti;
}

if (finalDistance < 1) {
    dmgMulti = dmgMulti + 0.5;
}

else {
    dmgMulti = dmgMulti + (0.5/finalDistance);
}

即使當finalDistance = 20仍在運行時,我在做某件事還是非常錯誤嗎?

else僅適用於第二個if 由於20不小於1,因此執行else分支。 如果要嚴格輸入其中一個條件,則第二個if應當用else if代替:

if (finalDistance > 10) {
    dmgMulti = dmgMulti;
}
else if (finalDistance < 1) { // Here!
    dmgMulti = dmgMulti + 0.5;
}
else {
    dmgMulti = dmgMulti + (0.5/finalDistance);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM