[英]Convert ArrayList of objects to Object Array for jasperreports
[英]Convert List of ArrayList of Objects into Object [][]
有谁知道如何转换二维列表:
private List<ArrayList<Object>> data = new ArrayList<ArrayList<Object>>();
放入数组: Object [][] data;
? 我注意到data.asList( new Object[i][j]
); 只返回1维,如T[]
。 当然,j维始终是恒定的。
据我所知,您必须像这样遍历列表中的所有数组:
Object[][] objs = new Object[data.size()][];
for(int i= 0; i < data.size(); i++)
objs[i] = data.get(i).toArray();
使用Java8的流怎么样?
data.stream()
.map(il -> il.stream().toArray(size -> new Integer[size]))
// OR THIS .map(il -> il.toArray(new Integer[0]))
.toArray(size -> new Integer[size][]);
这是带有一些示例数据的整个Main方法
public static void main(String[] args) {
List<List<Integer>> data = new ArrayList<>();
data.add(Arrays.asList(10, 11, 12, 13));
data.add(Arrays.asList(20, 21, 22, 23));
Integer[][] result = data.stream()
.map(il -> il.toArray(new Integer[0]))
.toArray(size -> new Integer[size][]);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.