所以我最终在我的教科书中看到了这行代码,我不确定它是如何工作的。这段代码在函数中意味着什么?这是否意味着它只返回get函数,如果它不是null?但如果是这样,那么函数将有机会没有返回语句?
return (tail.get() != null);
答案 0 :(得分:8)
您的陈述
return (tail.get() != null);
只是
return (booleanExpression);
布尔表达式为tail.get() != null
。您可以通过考虑它来评估此表达式,编译器将在逻辑上执行此操作。如果tail.get()
不为null,它将返回true,否则返回false。
答案 1 :(得分:7)
如果从方法调用true
返回的值不为空,则返回布尔值tail.get()
否则它将返回值false
。
与以下内容相同:
if (tail.get() != null)
return true;
else return false;
这只是一种较短的写作方式。
答案 2 :(得分:1)
在评估boolean tail.get()!= null之前,将计算对tail.get()的调用结果。此调用将返回一些值或可能为null。
如果tail.get()返回某个实例,则有问题的函数返回true;如果tail.get()返回null,则返回false。