- 如果是从数据库中查询的list,那么当没有数据时,返回的是空的list,此时遍历该list时,因为list为空,所以循环不会继续下去,自然也不会报错。对于这种情况,在遍历list前不用进行判断。
- 如果是调用别人的接口返回的list,因为接口是别人写的,当没有数据时,一般情况下会返回空list,但也有可能会返回一个null给你,假设返回的是null,那么对null进行遍历,肯定是会报空指针异常的。所以对于调用别人的接口返回的list,保险起见,在遍历该list前,要判断该list不为null。可以使用CollectionUtils.isNotEmpty(list)方法,该方法会判断list不为null且不为空。
//判断list不为null且不为空
if (CollectionUtils.isNotEmpty(list)) {
//然后遍历List
}