首页 > Java > StringBuilder 和 StringBuffer 的区别主要区别是什么?

StringBuilder 和 StringBuffer 的区别主要区别是什么?

上一篇 下一篇

StringBuilder 和 StringBuffer 的区别主要区别是什么?
在决定其中任何一个时是否存在任何性能问题?
StringBufferStringBuilder

分割线

网友回答:

基本上,方法是同步的,而不是同步的。StringBufferStringBuilder

操作“几乎”相同,但在单个线程中使用同步方法是矫枉过正的。

差不多就是这样了。

引用来自 StringBuilder API:

此类 [StringBuilder] 提供了与 StringBuffer 兼容的 API,但不保证同步。此类设计用于在单个线程使用字符串缓冲区的地方用作 StringBuffer 的直接替代(通常情况如此)。在可能的情况下,建议优先使用此类而不是 StringBuffer,因为它在大多数实现下会更快。

所以它被用来代替它。

和 也发生了同样的情况。VectorArrayList

分割线

网友回答:

StringBuffer是同步的,不是。StringBuilder

分割线

网友回答:

StringBuilder比它快,因为它不是.StringBuffersynchronized

下面是一个简单的基准测试:

public class Main {
    public static void main(String[] args) {
        int N = 77777777;
        long t;

        {
            StringBuffer sb = new StringBuffer();
            t = System.currentTimeMillis();
            for (int i = N; i --> 0 ;) {
                sb.append("");
            }
            System.out.println(System.currentTimeMillis() - t);
        }

        {
            StringBuilder sb = new StringBuilder();
            t = System.currentTimeMillis();
            for (int i = N; i > 0 ; i--) {
                sb.append("");
            }
            System.out.println(System.currentTimeMillis() - t);
        }
    }
}

测试运行给出 for 与 for 的数字。2241 msStringBuffer753 msStringBuilder

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

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