removeAll()
方法的语法是:
arraylist.removeAll(Collection c);
这里,
arraylist 是
ArrayList
类的对象。
removeAll() 参数
removeAll()
方法接受一个参数。
removeAll() 返回值
如果从数组列表中删除元素,则返回true
抛出 ClassCastException
如果 arraylist 中的元素类与指定的集合 中的元素类不兼容
如果数组列表包含空元素并且指定的集合不允许空元素,则抛出NullPointerException
示例 1: 从 ArrayList 中删除所有元素
import java.util.ArrayList; class Main { public static void main(String[] args){ // create an arraylist ArrayList<String> languages = new ArrayList<>(); // add elements to arraylist languages.add("Java"); languages.add("JavaScript"); languages.add("Python"); System.out.println("Programming Languages: " + languages); // remove all elements from arraylist languages.removeAll(languages); System.out.println("ArrayList after removeAll(): " + languages); } }
输出
Programming Languages: [Java, JavaScript, Python] ArrayList after removeAll(): []
在上面的例子中,我们创建了一个名为
languages 的数组列表。 arraylist 存储编程语言的名称。注意这一行,
languages.removeAll(languages);
在这里,我们将 ArrayList
languages 作为
removeAll()
方法的参数传递。因此,该方法从数组列表中删除所有元素。
注意: clear() 方法优先用于从数组列表中删除所有元素。要了解更多信息,请访问 Java ArrayList clear()。
示例 2: 从另一个 ArrayList 中存在的 ArrayList 中删除所有元素
import java.util.ArrayList; class Main { public static void main(String[] args) { // create an ArrayList ArrayList<String> languages1 = new ArrayList<>(); // insert element at the end of arraylist languages1.add("Java"); languages1.add("English"); languages1.add("C"); languages1.add("Spanish"); System.out.println("Languages1: " + languages1); // create another arraylist ArrayList<String> languages2 = new ArrayList<>(); // add elements to the arraylist languages2.add("English"); languages2.add("Spanish"); System.out.println("Languages2: " + languages2); // remove all elements of ArrayList2 from ArrayList1 languages1.removeAll(languages2); System.out.println("Languages1 after removeAll(): " + languages1); } }
输出
Languages1: [Java, English, C, Spanish] Languages2: [English, Spanish] Languages1 after removeAll(): [Java, C]
在上面的例子中,我们创建了两个名为
languages1 和
languages2 的数组列表。注意这一行,
languages1.removeAll(languages2);
这里,
removeAll()
方法用于从
languages1 中删除所有那些也存在于
languages2 中的元素。因此,
English 和
Spanish 从
languages1 中删除。
示例 3: 从 HashSet 中存在的 ArrayList 中删除所有元素
import java.util.ArrayList; import java.util.HashSet; class Main { public static void main(String[] args) { // create an ArrayList ArrayList<Integer> numbers = new ArrayList<>(); // add element to ArrayList numbers.add(1); numbers.add(2); numbers.add(3); numbers.add(4); System.out.println("ArrayList: " + numbers); // create a HashSet HashSet<Integer> primeNumbers = new HashSet<>(); // add elements to the HashSet primeNumbers.add(2); primeNumbers.add(3); System.out.println("HashSet: " + primeNumbers); // remove all elements of HashSet from ArrayList numbers.removeAll(primeNumbers); System.out.println("ArrayList after removeAll(): " + numbers); } }
输出
ArrayList: [1, 2, 3, 4] HashSet: [2, 3] ArrayList after removeAll(): [1, 4]
在上面的例子中,我们创建了一个名为
numbers 的数组列表和一个名为
primeNumbers 的哈希集。注意这一行,
numbers.removeAll(primeNumbers);
这里,
removeAll()
方法从
numbers 中删除所有那些也存在于
primeNumbers 中的元素。因此,2 和 3 从数组列表
numbers 中删除。