gpt4 book ai didi

java - 如何在 Collections.forEach() 中打印计数

转载 作者:行者123 更新时间:2023-11-30 02:58:04 27 4
gpt4 key购买 nike

所以我得到了如下列表,其中包含 lambda 表达式:

ArrayList<String> array = new ArrayList<>();
...
StringBuffer buf = new StringBuffer("");
array.stream().forEach((item) -> {
buf.append("Counter here: " + item.toString() + "\n");
});
return buf.toString();

但我无法实例化和修改 forEach 中的变量lambda 表达式,因为它必须是 final 。有什么办法可以做到这一点吗?

最佳答案

为此使用原子:

AtomicInteger cnt = new AtomicInteger(0);
StringBuilder buf = new StringBuilder("");
array.stream().forEach((item) -> {
buf.append("Counter here: " + cnt.incrementAndGet() + "\n");
});
return buf.toString();

关于java - 如何在 Collections.forEach() 中打印计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36696521/

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