我在Java 7中有一个int数组的列表。
最后,我需要将整个列表扁平化成一个串联的int数组。
List<int[]> list=new ArrayList<int[]>();
list.add(new int[]{0,1});
list.add(new int[]{2,3});
System.out.println(list.flatten());
Output expected -
int[]{0,1,2,3}实现这一目标的最优雅的方法是什么?
发布于 2015-02-14 05:48:27
您可以使用流:
删除- Java 7是后来偷偷进来的!
我不认为你能做得比:
int newlen = 0;
for( int[] a: list ){
newlen += a.length;
}
int[] out = new int[newlen];
int pos = 0;
for( int[] a: list ){
System.arraycopy( a, 0, out, pos, a.length );
pos += a.length;
}https://stackoverflow.com/questions/28512775
复制相似问题