[英]How do I do the null check using Optional
我有以下方法
public static String convertThreeLetterWordToUpper(String str) {
String result = Arrays.stream(
str.split(" ")).map(s-> checkLength(s)).collect(Collectors.joining(" "));
return result;
}
如何在不執行空檢查的情況下檢查str是否不為空,並返回結果的Optional。
您可以將原始字符串包裝在Optional.ofNullable
。 假設checkLength返回一個字符串,則下面的返回類型為Optional<String>
。
Optional.ofNullable(str)
.map(s -> Arrays.stream(s.split(" "))
.map(string -> checkLength(string))
.collect(Collectors.joining(" ")));
如果您有返回的默認返回值,則可以只鏈接orElse()
或可以使用orElseThrow()
引發異常。
String result = Optional.ofNullable(str)
.map(...)
.orElse("someDefault");
//.orElseThrow(() -> new RuntimeException()); Or whatever makes sense
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.