У меня такое ощущение, что вы неправильно используете Optional
, чтобы иметь что-то вроде свободного стиля программирования. ... Пожалуйста, не делай этого.
Неужели так сложно сделать следующее?
List<MyObj> myObjects = ...
List<MyObj> whatEverNeedsToBeCalculated = /* using myObjects... maybe extract to it's own function */
if (whatEverNeedsToBeCalculated.isEmpty())
return myObjects;
else
return whatEverNeedsToBeCalculated;
Назначается один раз, используется дважды; -)
И если это действительно ради беглости, я бы тогда предпочел использовать другой язык программирования на JVM; -)