English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java Basic Tutorial

Java Flow Control

Java Array

Java Object-Oriented (I)

Java Object-Oriented (II)

Java Object-Oriented (III)

Java Exception Handling

Java List (List)

Java Queue (Queue)

Java Map Collection

Java Set Collection

Java Input Output (I/O)

Java Reader/Writer

Java Other Topics

Java Program to Calculate the Difference Set Between Two Sets

Comprehensive Java Examples

In this example, we will learn how to calculate the difference set between two sets in Java.

To understand this example, you should know the followingJava ProgrammingTopic:

Example1To calculate the difference between two sets

import java.util.HashSet;
import java.util.Set;
class Main {
  public static void main(String[] args) {
    //Create the first collection
    Set<Integer> numbers = new HashSet<>();
    numbers.add(1);
    numbers.add(2);
    numbers.add(3);
    numbers.add(4);
    System.out.println("Numbers: " + numbers);
    //Create the second collection
    Set<Integer> primeNumbers = new HashSet<>();
    primeNumbers.add(2);
    primeNumbers.add(3);
    System.out.println("Primes: " + primeNumbers);
    //HashSet1and HashSet2difference set
    numbers.removeAll(primeNumbers);
    System.out.println("Numbers without prime numbers: " + numbers);
    }
}

Output Result

Numbers: [1, 2, 3, 4]
Primes: [2, 3]
Numbers without prime numbers: [1, 4]

In the above example, we created two sets named numbers and primeNumbers. We implemented this set using the HashSet class. Note this line,

numbers.retainAll(primeNumbers);

In this example, we use the removeAll() method to calculate the difference set between two sets.

Example2To get the difference between two sets using the Guava library

import java.util.HashSet;
import java.util.Set;
import com.google.common.collect.Sets;
class Main {
  public static void main(String[] args) {
    //Create the first collection
    Set<String> languages1 = new HashSet<>();
    languages1.add("Java");
    languages1.add("JavaScript");
    languages1.add("English");
    languages1.add("Spanish");
    System.out.println("Language: " + languages1);
    //Create the second collection
    Set<String> languages2 = new HashSet<>();
    languages2.add("English");
    languages2.add("Spanish");
    System.out.println("Human Language: ", + languages2);
    Set<String> intersect = Sets.difference(languages1, languages2);
    System.out.println("Programming Language: ", + intersect);
  }
}

Output Result

Language: [Java, JavaScript, English, Spanish]
Human Language: [English, Spanish]
Programming Language: [Java, JavaScript]

In the above example, we use the Guava library to get the difference between two sets. To run this program, you need to implement it by adding the Guava library to the dependencies.

Here, we use the difference() method of the Sets class that exists in the Guava library.

Comprehensive Java Examples