美文网首页
StringBuffer 和 StringBuilder区别

StringBuffer 和 StringBuilder区别

作者: 天涯刀客01号 | 来源:发表于2018-01-11 18:11 被阅读9次

    一 首先看他们在jdk实现类图


    StringBuffer.PNG
    StringBulider.PNG

    内部都是有 AbstractStringBuilder抽象类实现的


    AbstractStringBuilder.PNG

    里面是有一个char数组进行存储

    区别:
    StringBuffer 重载的方法通过synchronized 修饰,是线程安全的,但是较为耗时。
    StringBuilder没有通过synchronized 修饰,不是线程安全的,速度较快。

    1 StringBuffer

    @Override
    public synchronized StringBuffer append(String str) {
    toStringCache = null;
    super.append(str);
    return this;
    }

    2 StringBuilder

    @Override
    public StringBuilder append(String str) {
    super.append(str);
    return this;
    }

    相关文章

      网友评论

          本文标题:StringBuffer 和 StringBuilder区别

          本文链接:https://www.haomeiwen.com/subject/kfetoxtx.html