我有以下代码,我一直在为学校作业完善,但是有一个空指针异常让我发疯。
这是我的代码:
List<Integer> list3 = Arrays.asList(1,2);
List<Integer> list4 =Arrays.asList(5,17);
List<Integer> listR = new ArrayList<>();
ListsSets.difference(list3, list4, listR);
在while循环中,当a为null时,程序会继续进入while,这不应该发生。谁能告诉我为什么会这样? 我用来测试的数据是:
Select * from albums where album not in(select album from songs)
在为null之后,while应该不会再次执行,但它会以某种方式发生。
答案 0 :(得分:0)
使用&&
,因为如果其中一个为真,则使用||
将使if条件通过。结果,如果a
不为空但b
为空,则代码仍在执行。