获取两个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]