如何用 StringUtils.equals 替换所有 String.equals
How to replace all String.equals by StringUtils.equals
我想自动替换所有出现的
if(variable!=null && variable.equals(value)) ...
来自
if(StringUtils.equals(variable, value)) ...
以类型感知的方式。这意味着,variable
和 value
应该 肯定 是 String
(不仅仅是字典序处理,例如 awk/perl) .
此外,它应该足够灵活,可以将 value
作为文字和常量 (final static
) 或其他变量或参数来申请——任何肯定是 [=16 的东西=] 在这种情况下。另外,后面可能还有更多的布尔表达式。
我怀疑 Java Std API 可能在这里有所帮助,但代码转换本身不是由 API 处理的,只是对代码的访问。
IntelliJ IDEA 的结构搜索和替换功能能够进行此类转换。有关详细信息,请参阅 Web help。
我用过 JAPA 称为 Java 解析器。这是我用过的最好的代码更改工具。从读取 if 循环中的一行到将其保存回同一个源,它拥有一切。值得尝试。
如果您使用的是 netbeans,则可以使用自定义重构:
菜单 Refactor/Inspect 和 Transform/Browse/New/Edit 脚本:
<!description="Convert to StringUtils.equals">
$var!=null && $var.equals($val) :: $var instanceof java.lang.String
=> StringUtils.equals($var, $val)
;;
我想自动替换所有出现的
if(variable!=null && variable.equals(value)) ...
来自
if(StringUtils.equals(variable, value)) ...
以类型感知的方式。这意味着,variable
和 value
应该 肯定 是 String
(不仅仅是字典序处理,例如 awk/perl) .
此外,它应该足够灵活,可以将 value
作为文字和常量 (final static
) 或其他变量或参数来申请——任何肯定是 [=16 的东西=] 在这种情况下。另外,后面可能还有更多的布尔表达式。
我怀疑 Java Std API 可能在这里有所帮助,但代码转换本身不是由 API 处理的,只是对代码的访问。
IntelliJ IDEA 的结构搜索和替换功能能够进行此类转换。有关详细信息,请参阅 Web help。
我用过 JAPA 称为 Java 解析器。这是我用过的最好的代码更改工具。从读取 if 循环中的一行到将其保存回同一个源,它拥有一切。值得尝试。
如果您使用的是 netbeans,则可以使用自定义重构:
菜单 Refactor/Inspect 和 Transform/Browse/New/Edit 脚本:
<!description="Convert to StringUtils.equals">
$var!=null && $var.equals($val) :: $var instanceof java.lang.String
=> StringUtils.equals($var, $val)
;;