如何在Java8中返回二维数组?
我有一个返回矩阵的方法,其中行是一对如何在Java8中返回二维数组?,java,java-8,Java,Java 8,我有一个返回矩阵的方法,其中行是一对User和MessageData public static Object[][] getData() { DomXmlParsing parse = new DomXmlParsing(); List<User> users = parse.getUsers(); List<MessageData> datas = parse.getDataForMessage(); return new Object
User
和MessageData
public static Object[][] getData() {
DomXmlParsing parse = new DomXmlParsing();
List<User> users = parse.getUsers();
List<MessageData> datas = parse.getDataForMessage();
return new Object[][]{
{users.get(0), datas.get(0)},
{users.get(1), datas.get(1)},
{users.get(2), datas.get(2)},
{users.get(3), datas.get(3)},
{users.get(4), datas.get(4)}
};
}
publicstaticobject[]getData(){
DomXmlParsing parse=新的DomXmlParsing();
List users=parse.getUsers();
List data=parse.getDataFormMessage();
返回新对象[][]{
{users.get(0),datas.get(0)},
{users.get(1),datas.get(1)},
{users.get(2),datas.get(2)},
{users.get(3),datas.get(3)},
{users.get(4),datas.get(4)}
};
}
如何使用Java 8的流API返回此矩阵?您可以通过以下方法完成手头的任务:
return IntStream.range(0, users.size())
.mapToObj(i -> new Object[]{users.get(i), datas.get(i)})
.toArray(Object[][]::new);
IntStream.rangeClosed(0,4).map(i->new Object[]{users.get(i),datas.get(i)}).toArray(Object[]]::new)
还可以看看你是否可以使用Guava,这里有函数。糟糕的问题标题。你应该在标题中提到流。