gpt4 book ai didi

java - 收集后调用Java 8流中对象的方法

转载 作者:行者123 更新时间:2023-11-29 06:50:02 27 4
gpt4 key购买 nike

假设我有这段代码:

Map<Consumer, Item> map = myStream.parallel()
.filter(Objects::nonNull)
.collect(Collectors.toConcurrentMap(e->e,
e->e, mergeFunction));

我想做的是在收集完成后对流的每个对象调用一个方法。

例如,

item.setDate(item.getOneDate());

在代码按顺序循环遍历项目之前,将其放入 map 中,并在最后调用一些类似于上面的代码,设置“日期”。

while(iterator.hasNext()) {
Item blah = iterator.next();
....
// code for putting into map
...
blah.setDate(blah.getOneDate());
}

不确定如何使用 Java 8 流执行此操作。 forEach偷看?

最佳答案

如果这必须在 collect 操作之后完成,只需使用 forEach:

map.forEach((k, v) -> {...});

如果您只对值感兴趣:

map.values().forEach(item -> {...});

或者只有键:

map.keySet().forEach(item -> {...});

关于java - 收集后调用Java 8流中对象的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51507086/

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