如何将List <Optional <Type >>转换为List <Type>

Nil*_*han 3 java optional java-8

我已将值从提取Map到,List但是得到了List<Optional<TXN_PMTxnHistory_rb>>,我想将其转换为List<TXN_PMTxnHistory_rb>

我的代码:

List<Optional<TXN_PMTxnHistory_rb>> listHistory_rb6 = 
    listHistory_rb5.values()
                   .stream()
                   .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)

我想获得一个List<TXN_PMTxnHistory_rb>

Era*_*ran 7

过滤掉所有空值并用于map获取非空值:

List<TXN_PMTxnHistory_rb> listHistory_rb6 = 
    listHistory_rb5.values()
                   .stream()
                   .filter(Optional::isPresent)
                   .map(Optional::get)
                   .collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)