Java中的LinkedHashSet removeAll() 方法及示例
LinkedHashSet 是Java集合框架中的一个实现,它是HashSet的子类,可以维护元素的插入顺序。LinkedHashSet中提供了removeAll()方法,用于从当前集合中移除与另一个集合中元素相同的元素。本文将会对这个方法进行详细讲解,并提供使用示例。
LinkedHashSet removeAll() 方法的定义
LinkedHashSet类定义了以下的removeAll()方法:
public boolean removeAll(Collection<?> c)
其中,参数c表示另一个集合,这个方法的作用是从当前集合中移除与c集合中相同的元素。
该方法返回布尔类型,表示该操作是否改变了原集合。如果返回 true,表示原集合中的元素已经被改变;如果返回 false,表示原集合中的元素并没有被改变。
LinkedHashSet removeAll() 方法的示例
接下来,我们来看一下使用LinkedHashSet类的removeAll()方法的示例。
import java.util.LinkedHashSet;
public class LinkedHashSetDemo {
public static void main(String[] args) {
LinkedHashSet<String> set1 = new LinkedHashSet<String>();
set1.add("A");
set1.add("B");
set1.add("C");
set1.add("D");
LinkedHashSet<String> set2 = new LinkedHashSet<String>();
set2.add("A");
set2.add("B");
set2.add("E");
set2.add("F");
// 执行removeAll()方法
boolean isChanged = set1.removeAll(set2);
System.out.println("原集合是否发生了改变:" + isChanged); // 输出结果为:true
System.out.println("移除后的集合元素为:" + set1); // 输出结果为:[C, D]
}
}
在上述示例中,我们定义了两个LinkedHashSet类的对象,分别为 set1 和 set2。在 set1 中添加了 A、B、C、D 四个元素,在 set2 中添加了 A、B、E、F 四个元素。
接着,我们调用 set1 的 removeAll() 方法,并将 set2 作为参数传递进去。该方法的返回值为布尔类型,表示该操作是否改变了原集合,我们通过变量 isChanged 来接收该值。
最后,我们输出原集合是否发生了改变以及移除元素后的集合元素,发现 removeALl() 方法已经将 set1 中与 set2 中相同的元素 A 和 B 移除了,并返回 true(原集合已经发生了改变)。输出结果为:原集合是否发生了改变:true,移除后的集合元素为:[C, D]。
结论
本文介绍了Java中LinkedHashSet类的removeAll()方法的用法及示例,removeAll() 方法可以用于从当前集合中移除与另一个集合中元素相同的元素,并返回原集合是否发生了改变。通过使用LinkedHashSet类的removeAll()方法,可以方便地对集合中的元素进行删除操作。