如何将单个元素列表转换为java 8个可选
How to convert single element list to java 8 optional
如何将包含一个或零个元素的列表很好地转换为可选?
丑陋的代码:
List<Integer> integers = new ArrayList<>();
Optional<Integer> optional = integers.size() == 0 ?
Optional.empty() :
Optional.of(integers.get(0));
您可以使用Stream#findFirst()
方法,即:
Returns an Optional describing the first element of this stream, or an empty Optional if the stream is empty.
List<Integer> list = ...
Optional<Integer> optional = list.stream().findFirst();
或者,您也可以使用 Stream#findAny()
方法获得同样的成功。
如何将包含一个或零个元素的列表很好地转换为可选?
丑陋的代码:
List<Integer> integers = new ArrayList<>();
Optional<Integer> optional = integers.size() == 0 ?
Optional.empty() :
Optional.of(integers.get(0));
您可以使用Stream#findFirst()
方法,即:
Returns an Optional describing the first element of this stream, or an empty Optional if the stream is empty.
List<Integer> list = ...
Optional<Integer> optional = list.stream().findFirst();
或者,您也可以使用 Stream#findAny()
方法获得同样的成功。