我寫了這個小程序作爲Java練習(它模擬7個電邏輯門),因爲我目前正在學習它。但是當我嘗試編譯它時,它給了我幾個錯誤,說明了"MISSING RETURN STATEMENT"
,但僅限於具有2個if語句(AND,OR,NAND和NOR)的子例程。我想知道是否有什麼我不知道Java的if語句。我也想知道是否有在Java中的方式做if(X && Y)
,像C.無論如何,這裏是代碼:缺失返回資料
package logic;
public class logic {
boolean AND(boolean A, boolean B) {
if(A==true) {
if(B==true)
return true;
}
else
return false;
}
boolean OR(boolean A, boolean B) {
if(A==false) {
if(B==false)
return false;
}
else
return true;
}
boolean NOT(boolean A) {
if(A==true)
return false;
else
return true;
}
boolean NAND(boolean A, boolean B) {
if(A==true) {
if(B==true)
return false;
}
else
return true;
}
boolean NOR(boolean A, boolean B) {
if(A==false) {
if(B==false)
return true;
}
else
return false;
}
boolean XOR(boolean A, boolean B) {
if(A==B)
return false;
else
return true;
}
boolean XNOR(boolean A, boolean B) {
if(A==B)
return true;
else
return false;
}
}
和錯誤消息:
logic/logic.java:10: error: missing return statement
}
^
logic/logic.java:18: error: missing return statement
}
^
logic/logic.java:32: error: missing return statement
}
^
logic/logic.java:40: error: missing return statement
}
^
4 errors
所有幫助或建議,是公認。
由於某種原因,當我試圖使用if(A==true && B==true)
之前它沒有工作,但現在它是。
對於'AND','返回A && B',對於'OR','return A || B'等,或者完全省略這些功能? – Dukeling
'A == true'是多餘的,可以簡化爲'A'。 – Dukeling
@Dukeling這是一個味道的問題,然而 –