Optional<ArrayList<String>> option = Optional.of(new ArrayList<>());
Optional<ArrayList<?>> doesntWork = option;
Optional<ArrayList<?>> works = option.map(list -> list);
Первая попытка назначения не компилируется, а вторая с map
не компилируется. Такое ощущение, что map
самом деле ничего не должна делать, но по какой-то причине она превращает мой Optional<ArrayList<String>>
в Optional<ArrayList<?>>
. Есть ли какой-то неявный актерский состав?