[英]How to convert single element list to java 8 optional
如何很好地将包含一个或零个元素的列表转换为Optional?
丑陋的代码:
List<Integer> integers = new ArrayList<>();
Optional<Integer> optional = integers.size() == 0 ?
Optional.empty() :
Optional.of(integers.get(0));
您可以使用Stream#findFirst()
方法,其中:
返回描述此流的第一个元素的Optional,如果流为空,则返回空Optional。
List<Integer> list = ...
Optional<Integer> optional = list.stream().findFirst();
或者,同样的成功,您也可以使用Stream#findAny()
方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.