Optional 값은 부수 효과 소비와 값 반환 방식이 다르다

값이 없을 때의 정책 없이 get을 호출하면 NoSuchElementException에 의존하게 됩니다.

ifPresent/ifPresentOrElse

행동 실행 · 반환 없음

map/flatMap

Optional 값 변환

orElseGet/orElseThrow

호출자에 값·실패 반환

핵심: 출력만 필요하면 ifPresent, 새 값을 계산하면 map·orElse 계열을 사용합니다.