gpt4 book ai didi

java - 在 java 流中的映射中使用多个映射函数与 block 语句

转载 作者:搜寻专家 更新时间:2023-10-30 19:43:22 25 4
gpt4 key购买 nike

假设我有以下代码

data.stream()
.map(x -> {
Object a = maybeReturnsNull(x);
return a == null ? defaultValue : a;
})

我有一些可能返回 null 的函数,我将它应用于流的一个元素。然后我想确保所有 null 结果都更改为某个默认值。与使用前面定义辅助变量 a 并在 lambda 表达式中使用代码块的示例相比,使用以下示例中的两个映射之间是否有任何显着差异?

data.stream()
.map(x -> maybeReturnsNull(x))
.map(x -> x == null ? defaultValue : x)

是否有关于在何处避免将 block 语句与 lambda 函数一起使用的标准?

最佳答案

哪个都好。选择一个对你来说更易读的。如果计算自然分解,就像这个一样,那么多张 map 可能更具可读性。有些计算不会自然分解,在这种情况下,您将陷入前者。在这两种情况下,您都不应该担心一个比另一个的性能要好得多;这在很大程度上是不考虑的。

关于java - 在 java 流中的映射中使用多个映射函数与 block 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31058755/

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