zoukankan      html  css  js  c++  java
  • String StrigBuffer StringBuilder 浅解

    1.String是最基本的字符串类,用于表示字符串。

    特点:对象内容不可变,但可以通过指向不同的对象来“表示”不同的内容。

    使用场景:如果不涉及到内容改变,可以使用String。

    注意:如果想将String作为输出型参数,抱歉,做不到。 方法返回后,内容还是没有赋上值。具体原因就得追究到内存原理上了。此处不再叙述。

    2.StringBuffer:针对String要改变内容必须指向别的对象的缺陷而设计,StringBuffer可以直接改变其内容,不需要指向别的对象。

    特点:内容可改变(通过append/insert等方法); 线程安全。

    使用场景:字符串内容需要不断进行改变的地方,比如不断重组,且需要保证线程安全。

    3.StringBuilder:同StringBuffer。

    与StringBuffer区别在于:StringBuffer是线程安全的,而StringBuilder是线程不安全的。但效率上来说,StringBuilder比StringBuffer高。

    使用场景:字符串内容需要不断进行改变的地方,比如不断重组,且就是在单线程中使用,不涉及到线程安全。

    综上可知,实际中的场景应该是使用String和StringBuilder比较多。 

  • 相关阅读:
    L3-013. 非常弹的球
    L2-020. 功夫传人
    L1-039. 古风排版
    Innobackup备份过程
    MySQL物理备份的过程
    数据库表设计
    MySQL启动排错
    redo的类型和作用
    描述undo的三个作用
    redo log和binlog的纠缠
  • 原文地址:https://www.cnblogs.com/Anidot/p/6985064.html
Copyright © 2011-2022 走看看