使用Arrays.asList制作数组的副本

时间:2015-04-19 16:36:18

标签: java arrays collections

所以我有一个int数组,并希望有另一个数组指向与原始数组相同的值,这样当原始数组更改时,第二个数组将指向新值。

我试过

List<Integer> secondList = new ArrayList<>(Arrays.asList(original array));
secondList = secondList.subList(start,finish);

但是我得到一个错误,说明.asList返回 - 类型为int []的列表 难道我做错了什么?或者有什么好办法吗?

2 个答案:

答案 0 :(得分:0)

如果原始数组为int[],则Arrays.asList将返回List<int[]>。如果原始数组为Integer[],则Arrays.asList将返回List<Integer>

答案 1 :(得分:0)

您可以使用&#34; =&#34;将第二个列表指向第一个列表。操作

例如:

List<Integer> firstList = new ArrayList<Integer>();
List<Integer> secondList = firstList;

firstList.add(1);
System.out.println(secondList.size());

将打印出来&#34; 1&#34;作为第二个列表的大小,因为它们都是&#34;指向&#34;到记忆中的同一个位置。