We can copy and add List items in Array List using addAll() method. This method accepts a Collection (Ex. List) as an argument and adds the collection items at the end of its calling Collection (Ex. ArrayList). This method returns a boolean value. addAll() return true if the collection successfully adds else it returns false.
We can clone the list by two ways:
- Using addAll() method
- Using a copy constructor
Method 1: Using addAll() method
Syntax:
public boolean addAll(Collection c);
Parameter: It accepts a collection to be cloned as its parameter
Return Value: This method returns a boolean value. addAll() return true if the collection successfully adds else it returns false.
Exception: It will throw Null Pointer Exception if the specified Collection is null.
Java
// Java program to clone the list   import java.util.ArrayList; import java.util.List;   public class GFG {       public static void main(String[] args)     {         // create ArrayList         ArrayList<String> ArrList = new ArrayList<String>();           // Adding elements to the ArrayList         ArrList.add( "item 1" );         ArrList.add( "item 2" );         ArrList.add( "item 3" );           System.out.println( "ArrayList = " + ArrList);           // create List         List<String> ListItem = new ArrayList<String>();         ListItem.add( "item 4" );         ListItem.add( "item 5" );           // add List items in ArrayList         ArrList.addAll(ListItem);           System.out.println(             "After Adding List Item in ArrayList = " + ArrList);     } } |
ArrayList = [item 1, item 2, item 3] After Adding List Item in ArrayList = [item 1, item 2, item 3, item 4, item 5]
Method 2: Using a copy constructor
Using the ArrayList constructor in Java, a new list can be initialized with the elements from another collection.
Syntax:
ArrayList arrlist = new ArrayList(collection c);
Here, c is the collection containing elements to be added to this list.
Approach:
- Create a list to be cloned.
- Clone the list bypassing the original list as the parameter of the copy constructor of ArrayList.
Java
// Program to clone a List in Java     import java.util.ArrayList; import java.util.Arrays; import java.util.List;     class Example {     public static void main(String[] args)     {         // Create a list         List<String> original = Arrays.asList(                 "GeeksForGeeks" ,                 "Coding" ,                 "Portal" );             // Clone the list         List<String> cloned_arraylist             = new ArrayList<String>(original);             System.out.println(cloned_arraylist);     } } |
[GeeksForGeeks, Coding, Portal]