使用Java Optional。
List<String> myList = ....
Optional.ofNullable(myList)
.ifPresentOrElse(.. do something.., ()-> log.error("missing list"));
我想在列表为空或无的时候在日志中捕获。上面的方法对于 null
. 如何扩展它来捕获空集合?
我认为要用 if()else{}
是比较容易读懂的。你可以这样做。
Optional.ofNullable(myList == null || myList.isEmpty() ? null: myList)
.ifPresentOrElse(.. do something.., ()-> log.error("missing list"));
如果你真的想把事情复杂化,用 Optional
-
Optional.ofNullable(myList).filter(l -> !l.isEmpty())
.ifPresentOrElse(.. do something.., ()-> log.error("missing list"));
更好的是使用 if-else
-
if(myList !=null && !myList.isEmpty()) {
// do something
} else {
log.error("missing list");
}
进一步改进--确保 List
没有分配到一个 null
价值。