Tôi có đoạn mã dưới đây hơi xấu cho nhiều lần kiểm tra rỗng.
String s = null;
if (str1 != null) {
s = str1;
} else if (str2 != null) {
s = str2;
} else if (str3 != null) {
s = str3;
} else {
s = str4;
}
Vì vậy, tôi đã thử sử dụng Optional.ofNullable
như bên dưới, nhưng vẫn khó hiểu nếu ai đó đọc mã của tôi. cách tốt nhất để làm điều đó trong Java 8 là gì.
String s = Optional.ofNullable(str1)
.orElse(Optional.ofNullable(str2)
.orElse(Optional.ofNullable(str3)
.orElse(str4)));
Trong Java 9, chúng ta có thể sử dụng Optional.ofNullable
với OR
, Nhưng trong Java8 có cách tiếp cận nào khác không?
StringUtils.firstNonBlank()
or
cú phápString s = Optional.ofNullable(str1) .or(() -> Optional.ofNullable(str2)) .or(() -> Optional.ofNullable(str3)) .orElse(str4);
ngoại hình không tốt như nhữngStream.of
tôi sẽ sya.