Java List——foreach判断空指针问题
背景
- 一直在想,list使用foreach遍历时,需不需要进行空指针校验,今天做个测试
测试
- List is NULL
- 测试代码如下
public static void testForeach() { List<String> testList=null; testList.forEach(str->{ logger.info(str); }); }
-
- 结果如下:空指针异常
- List is 空
- 测试代码如下
public static void testForeach() { List<String> testList=new LinkedList<>(); testList.forEach(str->{ logger.info(str); }); }
-
- 结果如下:正常运行
结论
- 当List进行foreach进行遍历时,不会对List进行NULL校验,
- 当List进行foreach进行遍历时,当List为空时,不会进入foreach循环,
- 所以,在使用foreach遍历List时,最好先进行空指针判断!!!