提交 4af60393 编写于 作者: J Juergen Hoeller

Avoid substring allocation in StringUtils.replace

Closes gh-24023
上级 b4e1d483
...@@ -420,14 +420,14 @@ public abstract class StringUtils { ...@@ -420,14 +420,14 @@ public abstract class StringUtils {
int pos = 0; // our position in the old string int pos = 0; // our position in the old string
int patLen = oldPattern.length(); int patLen = oldPattern.length();
while (index >= 0) { while (index >= 0) {
sb.append(inString.substring(pos, index)); sb.append(inString, pos, index);
sb.append(newPattern); sb.append(newPattern);
pos = index + patLen; pos = index + patLen;
index = inString.indexOf(oldPattern, pos); index = inString.indexOf(oldPattern, pos);
} }
// append any characters to the right of a match // append any characters to the right of a match
sb.append(inString.substring(pos)); sb.append(inString, pos, inString.length());
return sb.toString(); return sb.toString();
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册