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();

This inspection can help to downgrade for backward compatibility with earlier Java versions.

This inspection depends on the Java feature 'Stream and Optional API' which is available since Java 8.

New in 2020.2

Inspection Details

By default bundled with:

IntelliJ IDEA 2024.1, Qodana for JVM 2024.1,

Can be installed with plugin:

Java, 241.16690

Last modified: 29 April 2024