假設我有兩個功能,boolean fA()
和boolean fB()
如何防止短路?
如果我寫了另一個函數function(boolean b)
我打電話function(fA()||fB())
然後fB()
可能不會被執行,如果fA()
返回true。
我喜歡這個功能,但是在這裏我需要兩個函數來執行。明顯的實現:
boolean temp = fA();
function(fB()||temp);
是醜陋的,並且需要額外的行使它不易讀。
有沒有一種方法可以用Java或其他優雅的方式強制進行評估,以在沒有幫助變量的情況下將其寫入一行?
我想這個問題應該叫做「防止短路」。 – 2rs2ts
注意:它可能會更好看,但對於新讀者來說,它肯定會隱藏你的意圖。 –
@ 2rs2ts是的,那更好。 –