📜  获取两个TreeSet的并交的Java程序

📅  最后修改于: 2022-05-13 01:55:45.448000             🧑  作者: Mango

获取两个TreeSet的并交的Java程序

两个 TreeSet 的并是两个 TreeSet 中存在的所有元素的集合。由于集合不包含重复值,因此两个 TreeSet 的并集也没有重复值。可以使用Java.util.TreeSet中的addAll()方法完成两个 TreeSet 的联合。 TreeSet 按排序顺序存储不同的值,因此可以使用将 set2 添加到 set1 来完成联合,addAll() 方法以排序顺序添加 set2 中不存在于 set1 中的所有值。

路口 两个 TreeSet 是 set1 和 set2 的所有相同元素的 Set。两个 TreeSet 的交集也不包含重复值。可以使用Java.util.TreeSet 中的retainAll()方法完成两个 TreeSet 的交集。 retainAll() 方法删除两个 TreeSet 中所有不相同的元素。

例子:

Input : set1 = {10, 20, 30}
    set2 = {20, 30, 40, 50}

Output: Union = {10, 20, 30, 40, 50}
    Intersection = {20, 30}
    
Input : set1 = {a, b, c}
    set2 = {b, d, e}
Output: Union = {a, b, c, d, e}
    Intersection = {b}

下面是实现:

Java
// Java Program to Get the Union
//& Intersection of Two TreeSet
  
import java.util.*;
  
public class GFG {
    public static void main(String[] args)
    {
  
        // New TreeSet1
        TreeSet treeSet1 = new TreeSet<>();
  
        // Add elements to treeSet1
        treeSet1.add(10);
        treeSet1.add(20);
        treeSet1.add(30);
  
        // New TreeSet1
        TreeSet treeSet2 = new TreeSet<>();
  
        // Add elements to treeSet2
        treeSet2.add(20);
        treeSet2.add(30);
        treeSet2.add(40);
        treeSet2.add(50);
  
        // Print the TreeSet1
        System.out.println("TreeSet1: " + treeSet1);
  
        // Print the TreeSet1
        System.out.println("TreeSet2: " + treeSet2);
  
        // New TreeSet
        TreeSet union = new TreeSet<>();
  
        // Get a Union using addAll() method
        union.addAll(treeSet2);
        union.addAll(treeSet1);
        // Print the Union
        System.out.println("Union: " + union);
  
        // New TreeSet
        TreeSet intersection = new TreeSet<>();
        intersection.addAll(treeSet1);
        intersection.retainAll(treeSet2);
        // Print the intersection
        System.out.println("Intersection: " + intersection);
    }
}


输出
TreeSet1: [10, 20, 30]
TreeSet2: [20, 30, 40, 50]
Union: [10, 20, 30, 40, 50]
Intersection: [20, 30]