zoukankan      html  css  js  c++  java
  • String StringBuffer和StringBuilder

    1 可变性

    String对象一旦创建就不可改变了,因为字符串是放在常量池的。

    StringBuffer和StringBuilder中的字符串是可变的,因为字符串放在字符数组中。

    2 线程安全

    StringBuilder不是线程安全的,StringBuffer是线程安全的。

    3 StringBuilder和StringBuffer都是AbstractStringBuilder的子类

    4 处理速度

    String最慢,StringBuilder最快,StringBuffer中间。

    因为String是不可变的,因此加入要append的话,其实是要创建新的对象的,又加重了gc的负担。

    StringBuffer是加了锁的,多了开销。

    5 适用情况

    String适合于字符串不变的情况。

    StringBuilder单线程,字符串易变的情况。

    StringBuffer多线程,字符串易变的情况。

  • 相关阅读:
    canvas和svg
    表单控件及表单属性
    ajax
    数据结构与算法经典问题解析-Java语言描述
    SpringBoot
    ThreadLocal 原理
    代理模式-结构型
    框架面试
    Hash算法总结
    集合与多线程面试
  • 原文地址:https://www.cnblogs.com/hustdc/p/8905813.html
Copyright © 2011-2022 走看看