您的位置:

Java List如何判断是否为空

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是否为空,共提出了五种判断方法。使用以上方法,可以保证程序的健壮性。