查找整个应用程序中的空字符串列表

时间:2014-09-24 11:36:14

标签: java pattern-matching

我们的企业应用程序拥有5000多个java类,由许多开发人员在15年内编写。我目前在这段代码中试图找到的是使用带有空值的String声明。即String myName =""实际应该是String myName = null。据我所知,空字符串声明只是String对象创建,而不使用关键字new,它将对象与String常量池一起添加。

这5000个类被模块化为单独的项目,我想找到所有这些声明,其中String声明为""而不是null

无论如何使用Pattern或Matcher类来实现这个目标吗?

2 个答案:

答案 0 :(得分:2)

您是否确定在不考虑好主意的情况下更换所有字符串?

考虑这段代码:

String myName ="";
If (anycondition) {
  myName = "somevalue"
}
if (myName.startsWith("something") ) 
{
  ...
}

准备好一些NullpointerExceptions ...

答案 1 :(得分:2)

如果您只需要在源代码中找到,则可以使用任何带有正则表达式搜索的IDE。模式类似于:String\s+\w+\s*=\s*""