Java 程序计算两个集合之间的差异

javacampus interviewserver side programmingprogramming

在本文中,我们将了解如何计算两个集合之间的差异。集合是不能包含重复元素的集合。它模拟了数学集合抽象。Set 接口只包含从 Collection 继承的方法,并添加了禁止重复元素的限制。

下面是相同的演示 −

假设我们的输入是

第一组:[90, 75, 60, 45]
第二组:[90, 60]

期望输出将是

两个集合相减后:
[75, 45]

算法

步骤 1 - 开始
步骤 2 - 声明
步骤 3 - 定义值。
步骤 4 - 创建两个 Set,并使用‘add’方法向其中添加元素。
步骤 5 - 在控制台上显示集合。
步骤 6 - 使用 ‘removeAll’ 方法计算集合的差异。
步骤 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(45);
      input_set_1.add(60);
      input_set_1.add(75);
      input_set_1.add(90);
      System.out.println("第一个集合定义为:" + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(60);
      input_set_2.add(90);
      System.out.println("第二个集合定义为:" + input_set_2);
      input_set_1.removeAll(input_set_2);
      System.out.println("\n两个集合相减后: \n" + input_set_1);
   }
}

输出

所需的包已导入
第一组定义为:[90, 75, 60, 45]
第二组定义为:[90, 60]

两组相减后:
[75, 45]

示例 2

在这里,我们将操作封装成展现面向对象编程的函数。

import java.util.HashSet;
import java.util.Set;
public class Demo {
   static void subtract(Set<Integer> input_set_1, Set<Integer> input_set_2){
      input_set_1.removeAll(input_set_2);
      System.out.println("\n两个集合相减后:\n" + input_set_1);
   }
    public static void main(String[] args) {
      System.out.println("所需的包已导入");
      Set<Integer> input_set_1 = new HashSet<>();
      input_set_1.add(45);
      input_set_1.add(60);
      input_set_1.add(75);
      input_set_1.add(90);
      System.out.println("第一个集合定义为:" + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(60);
      input_set_2.add(90);
      System.out.println("第二个集合定义为:" + input_set_2);
      subtract(input_set_1, input_set_2);
   }
}

输出

所需的包已导入
第一个集合定义为:[90, 75, 60, 45]
第二个集合定义为:[90, 60]

两个集合相减后:
[75, 45]

相关文章