Java List是常用的集合类型之一,具有存储对象集合并提供对它们的访问的能力。有时候,为了保证程序的健壮性,在使用List时需要对其是否为空进行判断。本文将从多个方面对如何判断Java List是否为空进行详细阐述。
一、使用isEmpty()方法
Java List提供了isEmpty()方法,该方法用于判断集合是否为空。其源码如下:
public boolean isEmpty() { return size == 0; }
从源码可以看出,该方法是通过判断List的size是否为0来判断是否为空。因此,可以使用以下代码判断List是否为空:
List<String> list = new ArrayList<>(); if(list.isEmpty()){ System.out.println("List为空"); }
如果List为空,则输出 "List为空"。
二、使用size()方法
除了isEmpty()方法外,还可以使用size()方法来判断List是否为空。该方法返回List的元素个数,如果元素个数为0,则可以判断List为空。以下是示例代码:
List<String> list = new ArrayList<>(); if(list.size() == 0){ System.out.println("List为空"); }
如果List为空,则输出 "List为空"。
三、使用Objects.isNull()方法
除了使用List自带的方法判断List是否为空,还可以使用Objects类中的isNull()方法。该方法用于判断对象是否为null。以下是示例代码:
List<String> list = new ArrayList<>(); if(Objects.isNull(list)){ System.out.println("List为空"); }
如果List为空,则输出 "List为空"。
四、通过异常捕获判断
除了使用以上方法判断List是否为空,还可以通过异常捕获来判断。当调用List中获取元素的方法(如get()方法)时,如果List为空则会抛出IndexOutOfBoundsException异常。因此,可以通过捕获该异常来判断List是否为空。以下是示例代码:
List<String> list = new ArrayList<>(); try { String str = list.get(0); } catch (IndexOutOfBoundsException e) { System.out.println("List为空"); }
如果List为空,则输出 "List为空"。
五、使用CollectionUtils.isEmpty()方法
如果开发者使用了Apache Commons Lang库中的CollectionUtils类,则可以直接使用isEmpty()方法对List进行判断。该方法使用了第一种方法中的isEmpty()方法判断List是否为空。以下是示例代码:
List<String> list = new ArrayList<>(); if(CollectionUtils.isEmpty(list)){ System.out.println("List为空"); }
如果List为空,则输出 "List为空"。
六、结语
本文介绍了如何判断Java List是否为空,共提出了五种判断方法。使用以上方法,可以保证程序的健壮性。