Java 程序计算两个集合的交集
javacampus interviewserver side programmingprogramming
在本文中,我们将了解如何计算两个集合的交集。集合是 不能包含重复元素的集合。它模拟了数学集合抽象。 Set 接口只包含从 Collection 继承的方法,并且添加了禁止重复元素的限制。
下面是相同的演示 −
假设我们的输入是 −
第一个集合:[40, 45] 第二个集合:[50, 45]
期望的输出将是 −
两个集合的交集为:[45]
算法
步骤 1 - 开始 步骤 2 - 声明即 步骤 3 - 定义值。 步骤 4 - 创建两个 Set,并使用‘add’方法向其中添加元素。 步骤 5 - 在控制台上显示 Set。 步骤 6 - 使用 ‘retainAll’ 方法计算集合的交集。 步骤 7 - 在控制台上显示两个集合的交集(所有唯一元素)。 步骤 8 - 停止
示例 1
在这里,我们将所有操作绑定在 ‘main’ 函数下。
import java.util.HashSet; import java.util.Set; public class Demo { public static void main(String[] args) { System.out.println("所需的包已导入"); Set<Integer> input_set_1 = new HashSet<>(); input_set_1.add(40); input_set_1.add(45); System.out.println("第一个集合定义为:" + input_set_1); Set<Integer> input_set_2 = new HashSet<>(); input_set_2.add(45); input_set_2.add(50); System.out.println("第二个集合定义为:" + input_set_2); input_set_2.retainAll(input_set_1); System.out.println("\n两个集合的交集为:" + input_set_2); } }
输出
所需的包已导入 第一个集合定义为:[40, 45] 第二个集合定义为:[50, 45] 两个集合的交集为:[45]
示例 2
在这里,我们将操作封装到展示面向对象编程的函数中。
import java.util.HashSet; import java.util.Set; public class Demo { static void set_intersection(Set<Integer> input_set_1, Set<Integer> input_set_2){ input_set_2.retainAll(input_set_1); System.out.println("\n两个集合的交集为: " + input_set_2); } public static void main(String[] args) { System.out.println("所需的包已导入"); Set<Integer> input_set_1 = new HashSet<>(); input_set_1.add(40); input_set_1.add(45); System.out.println("第一个集合定义为:" + input_set_1); Set<Integer> input_set_2 = new HashSet<>(); input_set_2.add(45); input_set_2.add(50); System.out.println("第二个集合定义为:" + input_set_2); set_intersection(input_set_1, input_set_2); } }
输出
所需的包已导入 第一个集合定义为:[40, 45] 第二个集合定义为:[50, 45] 两个集合的交集为:[45]