Optional call chain can be simplified
Reports Optional call chains that can be simplified. Here are several examples of possible simplifications:
optional.map(x -> true).orElse(false)
→optional.isPresent()
optional.map(x -> Optional.of(x.trim())).orElseGet(Optional::empty)
→optional.map(String::trim)
optional.map(x -> (String)x).orElse(null)
→(String) optional.orElse(null)
Optional.ofNullable(optional.orElse(null))
→optional
val = optional.orElse(null); val != null ? val : defaultExpr
→optional.orElse(defaultExpr)
val = optional.orElse(null); if(val != null) expr(val)
→optional.ifPresent(val -> expr(val))
New in 2017.2
Inspection Details | |
---|---|
Available in: | IntelliJ IDEA 2023.3, Qodana for JVM 2023.3 |
Plugin: | Java, 233.SNAPSHOT |
Last modified: 13 July 2023