There are two options to copy a Source List to another list.
Option 1: Use ArrayList constructor
ArrayList
Option 2: Use Collection.copy()
To use Collections.copy() destination list should be of same or
larger size than source list.
ArrayList
(sourceList.size());
Collections.copy(newList, sourceList);
Collections.copy() does not reallocate the capacity of destination
List if it does not have enough space to contain all elements of
source List. It throws IndexOutOfBoundsException.
The benefit of Collection.copy() is that it guarantees that the copy
will happen in linear time. It is also good for the scenario when we
want to reuse an array instead of allocating more memory in the
constructor of ArrayList.
One limitation of Collections.copy() is that it can accept only List
as source and destination parameters.
https://www.tutorialspoint.com/how-to-copy-a-list-to-another-list-in-java