Преобразуйте этот поток в использование Optional и Streams в JAVA.

Я написал некоторый код, чей поток похож на:

for each( x :list<A> )
    {
      String mid = x.getID();
      for each( y: x.getList() )
           {
            Immutablemap.put(y,mid);
            }
    } 

Я хочу преобразовать этот поток в одновременное использование Optional и потоков в Java.

Это мое усилие:

return Optional.ofNullable(LIST_A).orElse(Lists.newArrayList()).stream()
               .filter(Objects::nonNull)
                .filter(a -> !CollectionUtils.isEmpty(a.get_LIST_B()))
                .filter(a -> !StringUtils.isEmpty(a.getMID()))
                .flatMap(b -> b.getLIST_B().stream())
                .filter(b -> !StringUtils.isEmpty(b.get_y()))
                .collect(toImmutableMap(b -> someMap.get(
                                Long.toString(decryptCustomerID(
                                        trimID(b.get_y())))),
                                b -> trimID(A.getMId())));
-10
задан Brandon Buck 10 August 2019 в 15:58
поделиться