如何在 Java 中将一个列表复制到另一个列表?
可以通过多种方式复制一个元素的 列表 到另一个列表。
方式 #1
创建列表,方法是将另一个列表作为构造器参数传递。
List<String> copyOflist = new ArrayList<>(list);
创建列表并使用 addAll() 方法 添加源列表的所有元素。
方式 #2
List<String> copyOfList = new ArrayList<>(); copyOfList.addAll(list);
方式 #3
使用 Collections.copy() 方法 复制源列表的内容到目标列表。如果存在任何索引,现有的元素将被它们覆盖。
Collections.copy(copyOfList, list);
方式 #4
使用流创建列表的副本。
List<String> copyOfList = list.stream().collect(Collectors.toList());
示例
以下是使用多种方式说明创建列表对象副本的示例 −
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);
}
}输出
这将产生以下结果 −
Source: [Zara, Mahnaz, Ayan] Copy 1: [Zara, Mahnaz, Ayan] Copy 2: [Zara, Mahnaz, Ayan] Copy 3: [Zara, Mahnaz, Ayan] Copy 4: [Zara, Mahnaz, Ayan]
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP