📅  最后修改于: 2023-12-03 14:42:48.560000             🧑  作者: Mango
LinkedHashSet是Java中的一种特殊类型的HashSet,它维护元素的插入顺序,并允许使用null元素。removeAll()方法则用于从一个集合中移除另一个集合中存在的元素。
public boolean removeAll(Collection<?> c)
该方法从LinkedHashSet中移除包含在指定集合c中的所有元素。如果LinkedHashSet包含指定集合中的任何元素,则该方法将返回true,否则返回false。
以下是removeAll()方法的示例程序:
import java.util.LinkedHashSet;
public class LinkedHashSetExample {
public static void main(String[] args) {
LinkedHashSet<String> lhs1 = new LinkedHashSet<String>();
LinkedHashSet<String> lhs2 = new LinkedHashSet<String>();
// 添加元素到集合lhs1
lhs1.add("Java");
lhs1.add("C++");
lhs1.add("Python");
lhs1.add("JavaScript");
// 添加元素到集合lhs2
lhs2.add("Java");
lhs2.add("Python");
// 移除lhs1中存在于lhs2中的元素并打印结果
lhs1.removeAll(lhs2);
System.out.println("lhs1移除lhs2存在的元素后的集合:");
System.out.println(lhs1);
// 添加元素到集合lhs2中并再次移除lhs1中存在于lhs2中的元素并打印结果
lhs2.add("C++");
lhs1.removeAll(lhs2);
System.out.println("lhs1移除lhs2存在的元素后的集合:");
System.out.println(lhs1);
}
}
运行结果如下:
lhs1移除lhs2存在的元素后的集合:
[Java, JavaScript]
lhs1移除lhs2存在的元素后的集合:
[JavaScript]
在该示例程序中,我们创建了两个LinkedHashSet集合lhs1和lhs2,分别添加了不同的元素。然后我们使用removeAll()方法将lhs1中存在于lhs2中的元素移除,并打印出移除元素后的结果集合。最后我们再次向lhs2中添加元素“C++”,再次使用removeAll()方法将lhs1中存在于lhs2中的元素移除,并打印出移除元素后的结果集合。
LinkedHashSet的removeAll()方法用于从一个集合中移除另一个集合中存在的元素,它可以帮助我们快速地完成集合元素的删除。在使用时要注意LinkedHashSet维护元素的插入顺序,这点在removeAll()方法中也有所体现。