gpt4 book ai didi

java - 使用 java 流成对应用操作来连接两个列表

转载 作者:行者123 更新时间:2023-12-01 17:41:03 26 4
gpt4 key购买 nike

我有两个 boolean 值列表,我需要通过对具有相同索引的元素应用 AND 运算来连接它们,我期望获得一个 boolean 值列表,其中包含成对执行操作的结果。

public List<Boolean> concatenate(List<Boolean> l1, List<Boolean> l2) {

return l1.stream()
.flatMap(e1 -> l2.stream()
.filter(e2-> l1.indexOf(e1) == l2.indexOf(e2))
.map(e2-> e1&&e2))
.collect(Collectors.toList());
}

结果列表的大小将为 l1.size()*l2.size()所以第二个流中的过滤器正在过滤任何内容。

最佳答案

您可以使用 com.google.guava 库(版本 21 及更高版本)轻松完成此操作

public List<Boolean> concatenate(List<Boolean> firstList, List<Boolean> secondList) {
return Streams.zip(firstList.stream(), secondList.stream(), (a, b) -> (a && b))
.collect(Collectors.toList());
}

关于java - 使用 java 流成对应用操作来连接两个列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61295637/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com