Java 程序检查一个集合是否是另一个集合的子集

javacampus interviewserver side programmingprogramming

在本文中,我们将了解如何检查一个集合是否是另一个集合的子集。Set 是一个不能包含重复元素的集合。它模拟了数学集合抽象。Set 接口仅包含从 Collection 继承的方法,并添加了禁止重复元素的限制。

下面是相同的演示 −

假设我们的输入是

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

期望的输出将是

一个集合是另一个集合的子集吗?
true

算法

步骤 1 - 开始
步骤 2 - 声明即
步骤 3 - 定义值。
步骤 4 - 创建两个集合,并使用‘add’方法向其中添加元素。
步骤 5 - 在控制台上显示集合。
步骤 6 - 创建一个布尔变量,并针对一个集合调用‘containsAll’方法。
步骤 7 - 检查一个集合是否是另一个集合的子集。
步骤 8 - 如果是,则返回 True,否则返回 False。
步骤 9 - 在控制台上显示结果。
步骤 10 - 停止

示例 1

在这里,我们将所有操作绑定在‘main’函数下。

import java.util.HashSet;
import java.util.Set;
public class Demo {
   public static void main(String[] args) {
      System.out.println("The required packages have been imported");
      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("The first set is defined as: " + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(60);
      input_set_2.add(90);
      System.out.println("The second set is defined as: " + input_set_2);
      boolean result = input_set_1.containsAll(input_set_2);
      System.out.println("\nIs a sets sub-set of the other? \n" + result);
   }
}

输出

The required packages have been imported
The first set is defined as: [90, 75, 60, 45]
The second set is defined as: [90, 60]

Is a sets sub-set of the other?
true

示例 2

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

import java.util.HashSet;
import java.util.Set;
public class Demo {
   static void is_subset(Set<Integer> input_set_1, Set<Integer> input_set_2){
      boolean result = input_set_1.containsAll(input_set_2);
      System.out.println("\nIs a sets sub-set of the other? \n" + result);
   }
   public static void main(String[] args) {
      System.out.println("The required packages have been imported");
      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("The first set is defined as: " + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(60);
      input_set_2.add(90);
      System.out.println("The second set is defined as: " + input_set_2);
      is_subset(input_set_1, input_set_1);
   }
}

输出

The required packages have been imported
The first set is defined as: [90, 75, 60, 45]
The second set is defined as: [90, 60]

Is a sets sub-set of the other?
true

相关文章