Collections synchronizedMap() method in Java with Examples
Last Updated :
06 May, 2020
The
synchronizedMap() method of
java.util.Collections class is used to return a synchronized (thread-safe) map backed by the specified map. In order to guarantee serial access, it is critical that all access to the backing map is accomplished through the returned map.
Syntax:
public static <K, V> Map<K, V> synchronizedMap(Map<K, V> m)
Parameters: This method takes the
map as a parameter to be "wrapped" in a synchronized map.
Return Value: This method returns a
synchronized view of the specified map.
Below are the examples to illustrate the
synchronizedMap() method.
Example 1:
Java
// Java program to demonstrate
// synchronizedMap() method
// for <String, String> Value
import java.util.*;
public class GFG1 {
public static void main(String[] argv)
throws Exception
{
try {
// creating object of Map<String, String>
Map<String, String>
map = new HashMap<String, String>();
// populate the map
map.put("Value1", "20");
map.put("Value2", "30");
map.put("Value3", "40");
// printing the Collection
System.out.println("Map : " + map);
// create a synchronized map
Map<String, String>
synmap = Collections.synchronizedMap(map);
// printing the Collection
System.out.println("Synchronized map is : "
+ synmap);
}
catch (IllegalArgumentException e) {
System.out.println("Exception thrown : " + e);
}
}
}
Output:
Map : {Value3=40, Value1=20, Value2=30}
Synchronized map is : {Value3=40, Value1=20, Value2=30}
Example 2:
Java
// Java program to demonstrate
// synchronizedMap() method
// for <String, Boolean> Value
import java.util.*;
public class GFG1 {
public static void main(String[] argv)
throws Exception
{
try {
// creating object of Map<String, Boolean>
Map<String, Boolean>
map = new HashMap<String, Boolean>();
// populate the map
map.put("Bramha", true);
map.put("Vishnu", true);
map.put("Mahesh", true);
// printing the Collection
System.out.println("Map : " + map);
// create a synchronized map
Map<String, Boolean>
synmap = Collections.synchronizedMap(map);
// printing the Collection
System.out.println("Synchronized map is : "
+ synmap);
}
catch (IllegalArgumentException e) {
System.out.println("Exception thrown : " + e);
}
}
}
Output:
Map : {Bramha=true, Vishnu=true, Mahesh=true}
Synchronized map is : {Bramha=true, Vishnu=true, Mahesh=true}