Arraylist到数组复制Java

问题描述 投票:-1回答:1
 ArrayList<ArrayList<Integer>> L1=new ArrayList<>();
 ArrayList<Integer> L2 = new ArrayList<>();
 ArrayList<Integer> L3 = new ArrayList<>();
 ArrayList<Integer> L4 = new ArrayList<>();
 L2.add(5); L3.add(6); L4.add(9);
 L2.add(2); L3.add(1); L4.add(3);
 L2.add(1); L3.add(1); L4.add(2);
 L1.add(L2); L1.add(L3); L1.add(L4);
 L1.remove(L1.size() - 1);

现在我想在数组中保存从L1中删除的元素。由于此列表包含三个元素,我想创建一个类似int ar[] = new int[3];的数组,并将此删除的值保存到此数组中。

java arrays arraylist
1个回答
2
投票

如果你对Integer[]数组没问题,那么只需使用toArray方法:

ArrayList<Integer> removed = L1.remove(L1.size() - 1);
Integer[] integers = removed.toArray(new Integer[removed.size()]);

如果你想要int[]数组,你可以使用流:

int[] ints = L1.remove(L1.size() - 1).stream().mapToInt(i -> i).toArray();

.mapToInt(i -> i)用于将Integer值解包到int

© www.soinside.com 2019 - 2024. All rights reserved.