In this article we will discuss how to merge two HashSets.
HashSet provides a member function addAll() i.e.
public boolean addAll(Collection<? extends E> c)
It provides a functionality to add a collection into to a HashSet. But this Collection should be of Same Type as of HashSet or of its Base Class.
How addAll() works
It will iterate over the given Collection one by one and add each element individually in the Hashset. Also, if it has added any element then it will return true else returns false.
Frequently Asked:
Let’s see how to merge to HashSets i.e.
package com.thispointer.java.collections.hashsets; import java.util.ArrayList; import java.util.Arrays; import java.util.HashSet; import java.util.Iterator; public class Example3 { public static void main(String[] args) { // Create a new HashSet of String objects HashSet<String> setOfStrs1 = new HashSet<>(); // Adding elements in HashSet setOfStrs1.add("hello"); setOfStrs1.add("abc"); setOfStrs1.add("time"); setOfStrs1.add("Hi"); System.out.println("setOfStrs1 = " + setOfStrs1); // Create a new HashSet of String objects HashSet<String> setOfStrs2 = new HashSet<>(); // Adding elements in HashSet setOfStrs2.add("this"); setOfStrs2.add("that"); setOfStrs2.add("there"); System.out.println("setOfStrs2 = " + setOfStrs2); // Merge Set 2 in Set 1 boolean bResult = setOfStrs1.addAll(setOfStrs2); if(bResult) { System.out.println("Merging of Set 1 & Set 2 Successfull"); } System.out.println("setOfStrs1 = " + setOfStrs1); } }
Output:
setOfStrs1 = [Hi, abc, hello, time] setOfStrs2 = [that, there, this] Merging of Set 1 & Set 2 Successfull setOfStrs1 = [Hi, that, abc, there, this, hello, time]