java - 如何在 Java 8 中返回二维数组?

标签 java java-8

我有一个返回矩阵的方法,其中行是一对 UserMessageData

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)}
    };
}

如何使用 Java 8 的 Stream API 返回这个矩阵?

最佳答案

您可以通过以下方式完成手头的任务:

return IntStream.range(0, users.size())
                .mapToObj(i -> new Object[]{users.get(i), datas.get(i)})
                .toArray(Object[][]::new);

关于java - 如何在 Java 8 中返回二维数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48722867/

相关文章:

java - drawString() 奇怪地显示随机整数

java - Tomcat 在页面加载时给出 500 错误

java - Android - 如何异步更新ArrayAdapter?

java - 带反射的模块化共闭包原理

java - 从父类(super class)继承方法而不是从java 8中实现接口(interface)的默认方法的意义

java - 使用 Java 8 流从另一个列表创建对象列表

java - 作为字符串的函数名称

java - 如何将文本文件从 jar 复制到 jar 外部的文件中?

java - 如何将 java 对象列表转换为 Map<String, Map<String, String>>

java - 选择动态保管箱