我在编写 if 语句时遇到问题,如下所示:
public void foo(List<String> list)
{
if(list == null || list.isEmpty()){
// something
}
// else
}
这是困扰我的问题:如果列表为空 list.IsEmpty() 将失败(抛出异常,我在空对象上调用方法),因为列表为空。但是,由于我在做 || (或)如果 list 为 null(这是真的),它将执行第二个块。这会抛出异常。
这个对吗?在英语中,如果 list if null 或 empty 是有意义的。这是这种情况吗?
&& 呢?还是短路?
谢谢。