Java Program to Calculate the intersection of two sets


In this article, we will understand how to calculate the intersection of two sets. A Set is a Collection that cannot contain duplicate elements. It models the mathematical set abstraction. The Set interface contains only methods inherited from Collection and adds the restriction that duplicate elements are prohibited.

Below is a demonstration of the same −

Suppose our input is

First set: [40, 45]
Second set: [50, 45]

The desired output would be

The intersection of two sets is: [45]

Algorithm

Step 1 - START
Step 2 - Declare namely
Step 3 - Define the values.
Step 4 - Create two Sets, and add elements to it using the ‘add’ method.
Step 5 - Display the Sets on the console.
Step 6 - Compute the intersection of the sets using the ‘retainAll’ method.
Step 7 - Display the intersection (all the unique elements) of both the sets on the console.
Step 8 - Stop

Example 1

Here, we bind all the operations together under the ‘main’ function.

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(40);
      input_set_1.add(45);
      System.out.println("The first set is defined as: " + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(45);
      input_set_2.add(50);
      System.out.println("The second set is defined as: " + input_set_2);
      input_set_2.retainAll(input_set_1);
      System.out.println("\nThe intersection of two sets is: " + input_set_2);
   }
}

Output

The required packages have been imported
The first set is defined as: [40, 45]
The second set is defined as: [50, 45]

The intersection of two sets is: [45]

Example 2

Here, we encapsulate the operations into functions exhibiting object oriented programming.

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("\nThe intersection of two sets is: " + input_set_2);
   }
   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(40);
      input_set_1.add(45);
      System.out.println("The first set is defined as: " + input_set_1);
      Set<Integer> input_set_2 = new HashSet<>();
      input_set_2.add(45);
      input_set_2.add(50);
      System.out.println("The second set is defined as: " + input_set_2);
      set_intersection(input_set_1, input_set_2);
   }
}

Output

The required packages have been imported
The first set is defined as: [40, 45]
The second set is defined as: [50, 45]

The intersection of two sets is: [45]

Updated on: 30-Mar-2022

342 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements