如何用StringUtils.equals替换所有String.equals
我想自动替换所有出现的
if(variable!=null && variable.equals(value)) ...
通过
if(StringUtils.equals(variable, value)) ...
以类型感知的方式。 这意味着,该variable
和value
应该确保为String
(不仅仅是字典处理,例如使用awk / perl)。
此外,它应该足够灵活,可以将value
应用为文字以及常量( final static
)或其他变量或参数 – 在此上下文中肯定是String
任何内容。 此外,可能还有更多的布尔表达式。
我怀疑Java Std API在这里可能会有所帮助,但代码转换本身并不是由该API处理,只是访问代码。
如果您使用netbeans,则可以使用自定义重构:
菜单重构/检查和转换/浏览/新建/编辑脚本:
$var!=null && $var.equals($val) :: $var instanceof java.lang.String => StringUtils.equals($var, $val) ;;
IntelliJ IDEA的结构搜索和替换function可以进行此类转换。 有关更多信息,请参阅Web帮助 。
我使用了称为Java解析器的JAPA 。 这是我用过的最好的代码更改工具。 从读取if循环中的单行直到将其保存回相同的源,它具有一切。 值得尝试。