簡體   English   中英

如何將單個元素列表轉換為java 8可選

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM