gpt4 book ai didi

java - 是否可以使用 String 格式内的方法在 java 流中使用?

转载 作者:行者123 更新时间:2023-12-02 02:25:03 24 4
gpt4 key购买 nike

是否可以转换这样的代码

for (Contacto contact : contactos) {
fix.printf("%s\t%s\t%s\n",
contact.getName(), contact.getNumb(), contact.getDateOfBirth());
}

进入java流?

最佳答案

当然可以 - 下面应该可以解决这个问题,使用 forEach Stream的方法:

contactos.stream()
.forEach(c -> fix.printf("%s\t%s\t%s\n", c.getName(), c.getNumb(), c.getDoB()));

请记住,这可能会损害可读性 - 我认识的大多数人都会说循环比这更容易阅读。

另请记住,实际上,为此,您应该使用 forEachOrdered而不是 forEach - forEach 不保证处理项目的顺序,对于并行流来说这很重要。 forEachOrdered 保证项目被逐一处理。

<小时/>

您可以省略对 Stream 的调用,具体取决于您的容器 - 如果它实现 Iterable (大多数标准容器都是如此),那么你应该使用 forEach在它而不是流上(所以 contactos.forEach(...)。它更整洁,并且避免了创建 Stream 的开销。

您还可以避免上面的 forEachOrdered 问题,因为项目是“按迭代顺序”处理的。

关于java - 是否可以使用 String 格式内的方法在 java 流中使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47915061/

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