根据下面的代码, String s = null; 会抛出NullPointerException异常的有()。 if( (s!=null) & (s.length()>0) ) if( (s!=null) && (s.length()>0) ) if( (s==null) | (s.length()==0) ) if( (s==null) || (s.length()==0) )
出现异常主要是因为执行了s.length()这句话,所以A、B、C、D选项中只要没有执行到这句话的都是不会报空指针异常的。然后考查的第二点是短路逻辑运算符和非短路逻辑运算符。&和|为非短路逻辑运算符,无论两个语句为什么,一定会执行完毕,所以A、C两个是会报出异常的。