使用 Java 8 Stream API 将 2 个不同对象的列表组合成单个对象的列表

用户3812288

我有两个列表如下:

列表 ids = Arrays.asList(1,2,3); 列表代表 = Arrays.asList("abc","pqr","xyz");

现在我想创建一个预测对象列表,其值按顺序从上面两个列表映射,如下所示:

列表结果 = [ 预测(1,“abc”),预测(2,“pqr”),预测(3,“xyz”)]

class Prediction {
    int id;
    String rep;
}

如何使用 Java8 Stream API 做到这一点。

雅各布·范·林根

您描述的操作称为zipping

如果您确定列表的长度均匀,您可以执行以下操作:

IntStream.range(0, ids.size())
    .mapToObj(i -> new Prediction(ids.get(i), reps.get(i)))
    .toList()

假设 Prediction 类有一个这样的构造函数......

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Java 8流将2个不同对象的列表连接到第三个对象的列表

比较不同对象的列表并使用Stream在java8中构建新的对象列表

如何使用Java 8 Stream API将特定对象移动到列表的开头?

如何使用Java 8 Stream API将嵌套列表合并为简单列表

如何使用Java 8流将两个或更多不同对象列表的值设置为一个对象?

Java 8将BiFunction应用于两个不同对象的列表

如何使用Java 8中的流API通过同一类的不同对象填充数组列表?

使用Java 8 Stream API计算排名

使用Stream / Map Java 8从列表创建对象

使用Java8 Stream计算列表中的对象数

Java的8映射为对象的有一个字段列表组合成一个列表

从使用Java 8个流API对象列表收集名单

使用Java 8 Stream API将List <X>聚合到List <X>

如何使用Stream API Java 8一起打印两个列表?

使用 Java 8 Stream 将 null 替换为 2D String 数组中的另一个值

使用Java 8 Stream将通用数组列表转换为非通用数组列表

比较2个列表,然后使用Java8将匹配项添加到对象映射中

使用Java 8 Stream在2个列表中查找匹配的元素

我如何将 2 个数组列表组合成 Java 中的列表列表

Java8 Stream API:将列表分组到一个自定义类中

Java 8 Stream-使用过滤器将元素添加到列表

Java 8:使用Stream.of()将逗号分隔的字符串转换为通用列表

收集字符串列表以使用Java 8 Stream API进行映射

如何使用 Java 8 Stream API 减少组并返回排序列表

使用Stream 8使用Java 8将类型嵌套列表转换为另一种类型

使用Java Stream API更新POJO列表

使用Java 8 JDK将Iterable转换为Stream

将Java 8的Optional与Stream :: flatMap一起使用

使用Java 8 Stream将hashString值替换为String