In java.util.Collections class, synchronizedSet() method is used to return a synchronized (thread-safe) set backed by the specified set. This method takes the HashSet as a parameter. To guarantee serial access, it is critical that all access to the backing set is accomplished through the returned set. The task is to get the synchronized set from a given HashSet.
Example:
Input : HashSet = [3, 4, 5] Output: synchronizedSet = [3, 4, 5] Input : HashSet = ['a', 'b', 'c'] Output: synchronizedSet = ['a', 'b', 'c']
Syntax:
public static <T> Set<T> synchronizedSet(Set<T> s)
Parameters: HashSet as a parameter to be “wrapped” in a synchronized set.
Return Value: Synchronized view of the specified set.
Approach:
- Create a HashSet.
 - Add some elements in the HashSet.
 - Create a Set variable and assign it with the Collections.synchronizedSet() method.
 - Print the new synchronized Set.
 
Below is the implementation of the above approach:
Java
// Java code to get synchronized// set from hash setimport java.util.*;public class GFG {    public static void main(String args[])    {        // creating hash set        Set<Integer> hash_set = new HashSet<Integer>();                // adding the elements to hash set        hash_set.add(1);        hash_set.add(2);        hash_set.add(3);        hash_set.add(4);        hash_set.add(5);                // changing hash set to synchronized        // set and storing in set        Set synset = Collections.synchronizedSet(hash_set);        System.out.println("Synchronized Set: " + synset);    }} | 
Synchronized Set: [1, 2, 3, 4, 5]
