java.util.Collections.copy() 方法用于将一个列表中的所有元素复制到另一个列表中。操作完成后,目标列表中每个复制元素的索引将与其在源列表中的索引相同。目标列表必须至少与源列表一样长。如果更长,则目标列表中的其余元素不受影响。
语法
public static <T> void copy(List<? super T> dest,
List<? extends T> src)
这里,T是列表中元素的类型。
参数
dest | 指定目标列表。 |
src | 指定源列表。 |
返回值
void 类型。
异常
- 如果目标列表太小而无法包含整个源列表,则抛出 IndexOutOfBoundsException。
- 如果目标列表的列表迭代器,则抛出 UnsupportedOperationException不支持set操作。
示例:
在下面的示例中,java.util.Collections.copy() 方法用于将 list1 的所有元素复制到 list2 中。
import java.util.*;
public class MyClass {
public static void main(String[] args) {
//创建列表对象
List<Integer> list1 = new ArrayList<Integer>();
List<Integer> list2 = new ArrayList<Integer>();
//填充列表1
list1.add(10);
list1.add(20);
list1.add(30);
//填充列表2
list2.add(100);
list2.add(200);
list2.add(300);
//将list1的所有元素复制到list2中
Collections.copy(list2, list1);
//打印列表1
System.out.println("list1 contains: " + list1);
//打印列表2
System.out.println("list2 contains: " + list2);
}
}
上述代码的输出将是:
list1 contains: [10, 20, 30]
list2 contains: [10, 20, 30]