首页 > Java > 何时在 Java 中使用 StringBuilder

何时在 Java 中使用 StringBuilder

上一篇 下一篇

StringBuilder vs Java 中 toString() 中的字符串连接 

在Java中使用afor字符串连接通常更可取。情况总是这样吗?StringBuilder

我的意思是:创建对象、调用方法并最终已经更小的开销是将现有字符串与两个字符串的运算符连接起来,还是只建议多个(超过两个)字符串?StringBuilderappend()toString()+

如果有这样的阈值,它取决于什么(也许是字符串长度,但以何种方式)?

最后,您是否会牺牲串联的可读性和简洁性,以换取较小情况下(如两个、三个或四个字符串)的性能?+StringBuilder

在过时的Java优化技巧以及Java城市神话中,显式使用常规连接被认为是过时的。StringBuilder

分割线

网友回答:

如果你在循环中使用字符串连接,像这样,

String s = "";
for (int i = 0; i < 100; i++) {
    s += ", " + i;
}

那么你应该使用 a (not ) 而不是 ,因为它更快,消耗的内存更少。StringBuilderStringBufferString

如果你有一个语句,

String s = "1, " + "2, " + "3, " + "4, " ...;

然后你可以使用 s,因为编译器会自动使用。StringStringBuilder

分割线

网友回答:

拉尔夫的回答很棒。我宁愿使用 StringBuilder 类来构建/装饰 String,因为它的用法更像 Builder 模式。

public String decorateTheString(String orgStr){
            StringBuilder builder = new StringBuilder();
            builder.append(orgStr);
            builder.deleteCharAt(orgStr.length()-1);
            builder.insert(0,builder.hashCode());
            return builder.toString();
}

它可以用作构建字符串的帮助程序/构建器,而不是字符串本身。

分割线

网友回答:

作为一般规则,始终使用更具可读性的代码,并且仅在性能出现问题时才进行重构。在这种特定情况下,最新的JDK实际上在任何情况下都会将代码优化为StringBuilder版本。

通常,只有在循环中或在编译器无法轻松优化的某些复杂代码中进行字符串连接时,才真正需要手动执行此操作。

模板简介:该模板名称为【何时在 Java 中使用 StringBuilder】,大小是暂无信息,文档格式为.编程语言,推荐使用Sublime/Dreamweaver/HBuilder打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【Java】栏目查找您需要的精美模板。

相关搜索
  • 下载密码 lanrenmb
  • 下载次数 179次
  • 使用软件 Sublime/Dreamweaver/HBuilder
  • 文件格式 编程语言
  • 文件大小 暂无信息
  • 上传时间 04-08
  • 作者 网友投稿
  • 肖像权 人物画像及字体仅供参考
栏目分类 更多 >
热门推荐 更多 >
html5 自适应 微信模板 单页式简历模板 微信文章 企业网站 微信公众平台 微信素材 微信图片 响应式
您可能会喜欢的其他模板