有没有办法在java中向二维arraylist添加二维数组?

时间:2015-02-23 01:07:06

标签: java arrays

我知道如何将一个dimmensional数组添加到一个dimmensional数组列表中 即

 ArrayList<Integer> arrayList = new ArrayList<Integer>  
 (Arrays.asList(array));

但是,我不确定在两个dimmensional数组列表中添加两个dimmensional数组需要做什么.Below发布的是代码。

 int[][] myPoints = {{2,3},{4,5},{7,8},{9,10}};

 ArrayList<Integer> arrayList = new ArrayList<Integer>
 (Arrays.asList(myPoints));????

2 个答案:

答案 0 :(得分:0)

如果你想从int [] []保留一维数组,那基本上就是:

ArrayList<int[]> arrOfArr = new ArrayList<int[]>();
int[][] myPoints = {{2,3},{4,5},{7,8},{9,10}};

arrOfArr.addAll(Arrays.asList(myPoints)); // here's the one-liner doing the job

如果你想将你的2D数组展平为整数列表,除了迭代遍历数组的每个元素之外别无他法。我想,你可以。

答案 1 :(得分:0)

如果Java 8是您的选项,您可以使用Stream API一个行中完成您想要的任务:

int[][] myPoints = {{2,3},{4,5},{7,8},{9,10}};
List<List<Integer>> myPointsAsList = 
    Stream.of(myPoints).map(point -> Arrays.asList(point))
    .collect(Collectors.toList());