З Java 8 я переглядаю все нові й нові статті про використання опції / необов’язково. Я розумію, що вони намагаються представляти, і бачу багато прикладів їх використання як повернення. Однак те, що я не бачу, - це те, що вони використовуються як аргументи методу / функції на мовах, у яких немає синтаксису параметрів за замовчуванням / за бажанням.
Чи є якась причина не використовувати Optional
як аргумент методу у тому випадку, коли вам відомо, що аргумент є чимось, що може бути, а може і не потрібно? Ось приклад, про який я міг би придумати:
Optional<Customer> lookupCustomer(String firstName, Optional<String> middleName, String lastName)
Optional
призначений насамперед для повернених значень, які можуть бути відсутніми. Звичайно, можливі й інші способи використання, але вони громіздкі та, ймовірно, поганий.