Java Program to Calculate the difference between two sets


In this article, we will understand how to calculate the difference between 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: [90, 75, 60, 45]
Second set: [90, 60]

The desired output would be

After subtraction of two sets:
[75, 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 difference of the sets using the ‘removeAll’ method.
Step 7 - Display the difference of 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(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);
      input_set_1.removeAll(input_set_2);
      System.out.println("\nAfter subtraction of two sets: \n" + input_set_1);
   }
}

Output

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

After subtraction of two sets:
[75, 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 subtract(Set<Integer> input_set_1, Set<Integer> input_set_2){
      input_set_1.removeAll(input_set_2);
      System.out.println("\nAfter subtraction of two sets: \n" + input_set_1);
   }
   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);
      subtract(input_set_1, input_set_2);
   }
}

Output

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

After subtraction of two sets:
[75, 45]

Updated on: 30-Mar-2022

553 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements