Java List去除所有元素

介绍

在Java中,List是一种常用的集合类型,它可以存储任意类型的对象,并且可以动态地调整大小。有时候我们需要清空一个List中的所有元素,本文将介绍如何使用Java代码实现这个功能。

代码示例

下面是一个简单的示例代码,演示如何使用Java代码去除List中的所有元素:

import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        // 创建一个List对象
        List<String> list = new ArrayList<>();
        
        // 添加一些元素到List中
        list.add("元素1");
        list.add("元素2");
        list.add("元素3");
        
        // 输出List的元素个数
        System.out.println("List的元素个数:" + list.size());
        
        // 清空List中的所有元素
        list.clear();
        
        // 输出List的元素个数
        System.out.println("清空后List的元素个数:" + list.size());
    }
}

上述代码中,我们使用了List的clear()方法来清空List中的所有元素。这个方法会将List的大小设置为0,相当于把List中的所有元素都移除了。

清空List中的元素

除了使用clear()方法,我们还可以使用其他的方法来清空List中的元素。下面列举了一些常用的方法:

  • 使用removeAll()方法:removeAll()方法可以用来移除List中的所有元素。这个方法会遍历List中的每个元素,并调用每个元素的equals()方法与参数进行比较。如果元素相等,则将该元素从List中移除。
  • 使用removeRange()方法:对于ArrayList类型的List,我们还可以使用removeRange()方法来清空List中的元素。这个方法会移除从指定的起始索引到终止索引范围内的所有元素。需要注意的是,removeRange()方法是protected访问权限的,只能在ArrayList的子类中调用。
  • 使用retainAll()方法:retainAll()方法用于保留List中指定集合中包含的元素,而移除其他的元素。如果List中的元素不在指定的集合中,则会被移除。

下面是一个示例代码,演示如何使用这些方法清空List中的元素:


import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        // 创建一个List对象
        List<String> list = new ArrayList<>();
        
        // 添加一些元素到List中
        list.add("元素1");
        list.add("元素2");
        list.add("元素3");
        
        // 输出List的元素个数
        System.out.println("List的元素个数:" + list.size());
        
        // 使用removeAll()方法清空List中的元素
        list.removeAll(list);
        
        // 输出List的元素个数
        System.out.println("清空后List的元素个数:" + list.size());
        
        // 重新添加一些元素到List中
        list.add("元素4");
        list.add("元素5");
        list.add("元素6");
        
        // 使用removeRange()方法清空List中的元素
        if (list instanceof ArrayList) {
            ((ArrayList) list).removeRange(0, list.size());
        }
        
        // 输出List的元素个数
        System.out.println("清空后List的元素个数:" + list.size());
        
        // 重新添加一些元素到List中
        list.add("元素7");
        list.add("元素8");
        list.add("元素9");
        
        // 使用retainAll()方法清空List中的元素
        list.retainAll(new ArrayList<String>());
        
        // 输出List的元素个数
        System.out.println("清空后List的元素个数:" + list.size());
    }
}

关系图

下面是一个关系图,展示了List和其他一些集合类的关系:

erDiagram
    List }|..| ArrayList : 继承
    List }|..| LinkedList : 继承
    List }|..| Vector : 继承
    List }|..| Stack : 继承
    ArrayList }o..| RandomAccess : 实现
    LinkedList }o..