У мене наведений нижче код, який трохи некрасивий для кількох нульових перевірок.
String s = null;
if (str1 != null) {
s = str1;
} else if (str2 != null) {
s = str2;
} else if (str3 != null) {
s = str3;
} else {
s = str4;
}
Тому я спробував використовувати Optional.ofNullable
як нижче, але все ще важко зрозуміти, чи читає хтось мій код. який найкращий підхід для цього на Java 8.
String s = Optional.ofNullable(str1)
.orElse(Optional.ofNullable(str2)
.orElse(Optional.ofNullable(str3)
.orElse(str4)));
В Java 9, ми можемо використовувати Optional.ofNullable
з OR
, але в Java8 чи інший підхід?
StringUtils.firstNonBlank()
or
Синтаксис Java9String s = Optional.ofNullable(str1) .or(() -> Optional.ofNullable(str2)) .or(() -> Optional.ofNullable(str3)) .orElse(str4);
виглядає не так добре, якStream.of
я би sya.