2015-11-23 60 views
-8

想知道是否有人可以幫助看到爲什麼這是返回一個錯誤上有一個沒有if的其他。我試過看其他問題無濟於事其他否如果布爾錯誤

public boolean isLate() { 
if(done = false); AND (deadline.hasPassed = true); { 
return true; 
} else{ 
    return false;} 
} 
+3

學習一些基本的java編碼 – Shivam

+0

我認爲你需要學習一些基本的Java,如:條件運算符,比較...一些指向的鏈接:https://docs.oracle.com/javase/tutorial/java/nutsandbolts/ op2.html和https://docs.oracle.com/javase/tutorial/java/nutsandbolts/if.html –

回答

5

AND是不正確的。它必須被替換爲&&並在ìf定義內移動。而且使用==比較,而不是=

if(done == false && deadline.hasPassed == true) { 
    return true; 
} else { 
    return false; 
} 

因爲donedeadline.hasPassed似乎是布爾值,可以將其簡化書面方式(!意味着not

if(!done && deadline.hasPassed) { 
    return true; 
} else { 
    return false; 
} 

這可以簡化爲

public boolean isLate() { 
    return !done && deadline.hasPassed; 
} 
+3

直接提供答案並不好,OP不會從中學到任何東西。 – Shivam

+1

這裏不需要有條件分支! –

+1

當然,但最初的問題是關於'如果',所以我保留在我的答案。我編輯了我的答案。 – ThomasThiebaud

3

您正在尋找的東西是:

public boolean isLate() { 
    return ((done == false) && (deadline.hasPassed == true)); 
} 

但是這種對java的基本理解可以用google搜索!