我有两个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()
,因此第二个流中的过滤器将过滤任何内容。
List<Boolean> l1 = new ArrayList<>(Arrays.asList(true, false, true));
List<Boolean> l2 = new ArrayList<>(Arrays.asList(false, true, true));
List<Boolean> l3 = IntStream.range(0, min(l1.size(), l2.size()))
.mapToObj(i -> l1.get(i)&&l2.get(i))
.collect(Collectors.toList());
// [false, false, true]
您可以使用IntStream.Range()
一次遍历这两个列表,并使用.MapToOBJ()
将&
转换为Boolean
和.Collection()
将其存储在新的列表
中。
如果您确定这两个范围的大小相同,则可以将范围简化为.range(0,L1.size())
。
问题内容: 给定以字典为元素的列表,我想产生一个新列表,其中包含一组连接的字典。每个字典都保证有一个称为“索引”的键,但除此之外可以有任意键集。非索引键永远不会在列表之间重叠。例如,想象以下两个列表: (永远不会出现在中,因为它出现在中,并且类似地,永远不会出现在中,因为它出现在中) 我想产生一个联合列表: 在Python中最有效的方法是什么? 问题答案: 编辑 :由于不能保证被排序(不按特定顺序
我有两个工作(工作1,工作2)工作2取决于工作1的结果,所以它必须等到工作1完成 我需要用链子把它们锁起来: 谢谢你。
我有两个非常大的系列,只包含连接键。在不使用索引的情况下(在本例中没有意义),我希望以最有效的方式通过值将一个系列左键连接到另一个系列。 现在,我添加了一列1,这样我就可以使用和一个左连接,这样我就可以确定中的每个键是否也存在于Right中。 我确信我可以在不创建两个未使用的列的情况下完成这项工作,但是似乎希望为联接使用索引。有没有办法让两个系列的值保持不变?有没有更快的numpy版本? 例如:
我想通过
我正在尝试使用Apache Flink流API加入两个流,但没有任何内容加入,并且在阅读文档后我不知道我做错了什么 关键功能是
下面的代码片段是从JoinedStreams的javadoc复制的 这两个流仅基于一个键(通过< code>t =计算)进行连接 我会问我如何基于多个键进行连接,例如,one.a = two.a和