美文网首页
String、StringBuffer、StringBuilde

String、StringBuffer、StringBuilde

作者: 李俊的博客 | 来源:发表于2016-06-23 21:18 被阅读292次

    String、StringBuffer、StringBuilder

    1、是否可变

    String类中使用字符数组保存字符串,如下可知因为有final修饰符,所以String对象是不可变的。

    private final char value[];
    

    StringBuffer与StringBuilder都继承自AbstractStringBuilder类,在AbstractStringBuilder中也是使用字符数组保存字符串,如下可知这两种对象都是可变的。

    char[] value;
    
    2、是否线程安全

    String中的对象是不可变的,也就可以理解为常量,显然线程安全。
    StringBuffer对方法加了同步锁,所以是线程安全的。
    StringBuilder并没有对方法加同步锁,所以是非线程安全的。

    String

    实现字符串倒序:字符串“abcde”变成“edcba”

    String src1 = "abcde";
    String src2 = new StringBuilder(src1).reverse().toString();
    

    相关文章

      网友评论

          本文标题:String、StringBuffer、StringBuilde

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