我看到现有代码中使用了几个字符串拼接,Sonar 代码覆盖率建议使用 StringBuilder。我正在更新代码以使用 StringBuilder。但是我想知道如何高效地用新字符串覆盖现有内容。
在字符串表示中,应该像下面这样:
String query = "select...";
if ( x ) {
query = "select xyz...";
}
使用 StringBuilder, 我使用了这个:
StringBuilder query = new StringBuilder("select...");
if ( x ) {
// I need to overwrite the existing stringbuilder content here
query = new StringBuilder("Select xyz..");
//or
query = query.replace(,,,);
//or
//Anything better
}
我希望有一种像这样的方法:
我希望有一种方法类似于:
query.replace("new string");
这个功能是用新字符串覆盖整个已有字符串的,但它并不可用。
.delete().append()
之外,没有其他简单的方法... 我希望StringBuilder
有一个.clear()
:( - fge