java - 字符串与 StringBuilder

标签 java string stringbuilder

我需要修改输入字符串以返回一些输出。基本上,当我看到特定的字符串时,我需要将其删除。我在考虑是否使用 StringBuilder 与 String。从我的角度来看,String 会简单得多。

假设:

StringBuilder input = new StringBuilder(inputs)
if(inputs.contains("someword)"")) {
     // remove it by inputs = inputs.replace("someword", "");
}

最好使用StringBuilder input = new StringBuilder(inputs)并删除特定字符串,还是使用原始inputs =inputs.replace(...)。

我认为使用StringBuilder会变得困惑。 StringBuilder 用于连接,但我不连接字符串。

最佳答案

过去,当您对 String 进行多次修改时,StringBuilder 大多数时候都比 String 快得多。

但从 JDK 6 开始,编译器本身通常会自动将 String 替换为 StringBuilder(包括所有相关行),这可能会提高性能。通过使用反编译器,这一点变得可见。因此在大多数情况下您不会注意到任何差异。

如果您对结构比简单的一批命令更复杂的字符串应用多个操作,那么使用 StringBuilder 仍然比自动编译器优化更好。

关于java - 字符串与 StringBuilder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60267845/

相关文章:

Python 字符串比较不起作用

Python - 存储在变量中的字符串显示为元组

java - 生成7位数字

java - 如何强制 Eclipse Link 创建完全相同的 ClassName 的表?

Java 字符串不变性和使用相同的字符串值创建新字符串

ios - Swift:字符后的字符串firstIndex

java - 在 Java 中,什么时候我应该更喜欢 String 而不是 StringBuilder,反之亦然?

java同步方法中的线程安全错误

Java HttpClient NoSuchAlgorithmException

c# - Stringbuilder 从多个数组追加表单