Скажем, у меня есть следующий код
data.stream()
.map(x -> {
Object a = maybeReturnsNull(x);
return a == null ? defaultValue : a;
})
У меня есть функция, которая может возвращать null
, и я применяю ее к элементу потока. Затем я хочу убедиться, что любой результат null
будет изменен на некоторое значение по умолчанию. Есть ли существенная разница между использованием двух карт, как в следующем примере, по сравнению с использованием предыдущего примера, который определяет вспомогательную переменную a
и использует блок кода в выражении лямбда?
data.stream()
.map(x -> maybeReturnsNull(x))
.map(x -> x == null ? defaultValue : x)
Есть ли стандарт на то, где или нет, чтобы избежать использования операторов блока с лямбда-функциями?