Ich habe den folgenden Code, der für mehrere Nullprüfungen etwas hässlich ist.
String s = null;
if (str1 != null) {
s = str1;
} else if (str2 != null) {
s = str2;
} else if (str3 != null) {
s = str3;
} else {
s = str4;
}
Also habe ich versucht, Optional.ofNullable
wie unten zu verwenden, aber es ist immer noch schwer zu verstehen, wenn jemand meinen Code liest. Was ist der beste Ansatz, um dies in Java 8 zu tun?
String s = Optional.ofNullable(str1)
.orElse(Optional.ofNullable(str2)
.orElse(Optional.ofNullable(str3)
.orElse(str4)));
In Java 9 können wir Optional.ofNullable
mit verwenden OR
, aber in Java8 gibt es einen anderen Ansatz?
StringUtils.firstNonBlank()
or
SyntaxString s = Optional.ofNullable(str1) .or(() -> Optional.ofNullable(str2)) .or(() -> Optional.ofNullable(str3)) .orElse(str4);
sieht nicht so gut aus wie die, dieStream.of
ich sya würde.