Optional
链替换它们。
示例:
return str == null ? "" : str.trim();
应用快速修复后:
return Optional.ofNullable(str).map(String::trim).orElse("");
虽然替换并不总是更短,但它可能有助于进一步重构(例如,将方法返回值更改为 Optional
)。
请注意,当条件的非 null 分支返回 null 值时,相应的映射步骤将产生一个空的 Optional
,可能会改变语义。 如果不能静态证明保留语义,则快速修复操作名称将包含 “(可能更改语义)” 通知,并关闭检查高亮显示。
仅当项目或模块的语言级别为 8 或更高时才报告此检查。
2018.1 的新功能