![Trending Articles on Technical and Non Technical topics](/images/trending_categories.jpeg)
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to copy a list to another list in Java?
A List of elements can be copied to another List using multiple ways.
Way #1
Create a List by passing another list as a constructor argument.
List<String> copyOflist = new ArrayList<>(list);
Create a List and use addAll() method to add all the elements of the source list.
Way #2
List<String> copyOfList = new ArrayList<>(); copyOfList.addAll(list);
Way #3
Use Collections.copy() method to copy the contents of source list to destination. Existing elements will be overridden by indexes if any.
Collections.copy(copyOfList, list);
Way #4
Use Streams to create a copy of a list.
List<String> copyOfList = list.stream().collect(Collectors.toList());
Example
Following is the example to explain the creation of copy of List object using multiple ways −
package com.tutorialspoint; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.stream.Collectors; public class CollectionsDemo { public static void main(String[] args) { List<String> list = Arrays.asList("Zara","Mahnaz","Ayan" ); System.out.println("Source: " + list); List<String> copyOfList1 = new ArrayList<>(list); System.out.println("Copy 1: " + copyOfList1); List<String> copyOfList2 = new ArrayList<>(); copyOfList2.addAll(list); System.out.println("Copy 2: " + copyOfList2); List<String> copyOfList3 = Arrays.asList("Rob","Julie","John" ); Collections.copy(copyOfList3, list); System.out.println("Copy 3: " + copyOfList3); List<String> copyOfList4 = list.stream().collect(Collectors.toList()); System.out.println("Copy 4: " + copyOfList4); } }
Output
This will produce the following result −
Source: [Zara, Mahnaz, Ayan] Copy 1: [Zara, Mahnaz, Ayan] Copy 2: [Zara, Mahnaz, Ayan] Copy 3: [Zara, Mahnaz, Ayan] Copy 4: [Zara, Mahnaz, Ayan]
Advertisements