假设我有两个功能,boolean fA()
和boolean fB()
如何防止短路?
如果我写了另一个函数function(boolean b)
我打电话function(fA()||fB())
然后fB()
可能不会被执行,如果fA()
返回true。
我喜欢这个功能,但是在这里我需要两个函数来执行。明显的实现:
boolean temp = fA();
function(fB()||temp);
是丑陋的,并且需要额外的行使它不易读。
有没有一种方法可以用Java或其他优雅的方式强制进行评估,以在没有帮助变量的情况下将其写入一行?
我想这个问题应该叫做“防止短路”。 – 2rs2ts
注意:它可能会更好看,但对于新读者来说,它肯定会隐藏你的意图。 –
@ 2rs2ts是的,那更好。 –