Inspectopedia Help

'Optional' can be replaced with sequence of 'if' statements

Reports Optional call chains that can be replaced with a sequence of if statements.

Example:

return Optional.ofNullable(name) .map(this::extractInitials) .map(initials -> initials.toUpperCase(Locale.ENGLISH)) .orElseGet(this::getDefault);

After the quick-fix is applied:

if (name != null) { String initials = extractInitials(name); if (initials != null) return initials.toUpperCase(Locale.ENGLISH); } return getDefault();

java.util.Optional appeared in Java 8. This inspection can help to downgrade for backward compatibility with earlier Java versions.

New in 2020.2

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023