Open In App

Collections synchronizedList() method in Java with Examples

Last Updated : 08 Oct, 2018
Improve
Improve
Like Article
Like
Save
Share
Report

The synchronizedList() method of java.util.Collections class is used to return a synchronized (thread-safe) list backed by the specified list. In order to guarantee serial access, it is critical that all access to the backing list is accomplished through the returned list.

Syntax:

public static <T> List<T>
  synchronizedList(List<T> list)

Parameters: This method takes the list as a parameter to be “wrapped” in a synchronized list.

Return Value: This method returns a synchronized view of the specified list.

Below are the examples to illustrate the synchronizedList() method

Example 1:




// Java program to demonstrate
// synchronizedList() method for String Value
  
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv) throws Exception
    {
        try {
  
            // creating object of List<String>
            List<String> list = new ArrayList<String>();
  
            // populate the list
            list.add("A");
            list.add("B");
            list.add("C");
            list.add("D");
            list.add("E");
  
            // printing the Collection
            System.out.println("List : " + list);
  
            // create a synchronized list
            List<String> synlist = Collections
                                       .synchronizedList(list);
  
            // printing the Collection
            System.out.println("Synchronized list is : " + synlist);
        }
  
        catch (IllegalArgumentException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}


Output:

List : [A, B, C, D, E]
Synchronized list is : [A, B, C, D, E]

Example 2:




// Java program to demonstrate
// synchronizedList() method for Integer Value
  
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv)
        throws Exception
    {
  
        try {
  
            // creating object of List<Integer>
            List<Integer> list = new ArrayList<Integer>();
  
            // populate the list
            list.add(20);
            list.add(30);
            list.add(40);
            list.add(50);
            list.add(60);
  
            // printing the Collection
            System.out.println("List : " + list);
  
            // create a synchronized list
            List<Integer> synlist = Collections
                                        .synchronizedList(list);
  
            // printing the Collection
            System.out.println("Synchronized list is : " + synlist);
        }
  
        catch (IllegalArgumentException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}


Output:

List : [20, 30, 40, 50, 60]
Synchronized list is : [20, 30, 40, 50, 60]


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads