Функция Optional.ifPresent
принимает потребителя, которому вообще не разрешено возвращать значение. Лямбда, переданная в ifPresent
, должна иметь void
тип возврата.
Вероятно, вам лучше не использовать лямбду для этой части, а вместо этого писать if (l.isPresent()) { ... }
.
Если вы настаиваете на использовании функционального стиля, вы можете написать l -> l.filter(m -> m.getName().equals("name")).map(l -> SortOrder.C).orElse(sort)
.