📜  Java中的 LinkedHashSet removeAll() 方法与示例(1)

📅  最后修改于: 2023-12-03 14:42:48.560000             🧑  作者: Mango

Java中的 LinkedHashSet removeAll() 方法与示例

LinkedHashSet是Java中的一种特殊类型的HashSet,它维护元素的插入顺序,并允许使用null元素。removeAll()方法则用于从一个集合中移除另一个集合中存在的元素。

removeAll()方法的语法
public boolean removeAll(Collection<?> c)

该方法从LinkedHashSet中移除包含在指定集合c中的所有元素。如果LinkedHashSet包含指定集合中的任何元素,则该方法将返回true,否则返回false。

removeAll()方法的示例

以下是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()方法中也有所体现。