##API(五)————StringBuffer类和StringBuilder类(重要)

StringBuffer类和StringBuilder类

  ##一、除了使用String类存储字符串之外,还可以使用StringBuffer类来存储字符串。它比String类更高效,特别是对字符擦混进行连接操作时,使用 StringBuffer类可以大大提高程序的执行效率。

  ##二、StringBuffer类

    位于Java.util包下,是String类的增强类。

  ##三、方法:

    1,toString();

      语法:字符串.toString();将字符串转换为String类的对象并返回。

        String a="Hello";
        String s1 = a.toString();

    2,append();

      语法:字符串.append(参数);将参数连接到字符串后并返回。

    注:该方法和String()类的concat()方法一样,都是把一个字符串追加到另一个字符串后面,不同的是String类智能将String类型的字符串追加到一个字符串后面,而Stringbuffer类可以将任何类型的值追加到字符串后面。

      StringBuffer sb = new StringBuffer("青春无悔");
        int num=10;
        StringBuffer append = sb.append(num);
        System.out.println(append);
  返回结果是:
    青春无悔10

    3,insert();

      语法:字符串.insert(位置,参数);

  ##四、StringBuilder类

    位于Java.lang.StringBuilder是JDK 5.0版本新增的类,它是一个可变的字符序列。在大多数实现中,它比StringBuffer执行的更快,使用方法和StringBuffer类基本上一样。

  ##五、重点:String类、StringBuffer类、StrinBuilder类对比(面试题)

    1,String:字符串常量

      String是不可变的对象,每次改变都会生成一个新的String对象,在经常改变内容的字符串最好不要用String类型,因为每次生成对象都会对系统性能产生影响。

    2,StringBuffer:字符串变量

      StringBuffer是可变的字符串,每次改变,会对StringBuffer本身进行操作,不会生成新的对象,在改变对象使用,在字符串连接操作中,StringBuffer类的执行效率比String高。

    3,StringBuilder:字符串变量

      它和StringBuffer类的区别是:StringBuffer类时线程安全的,StringBuilder类时单线程的,不提供同步,理论上效率更高

原文地址:https://www.cnblogs.com/liurui-bk517/p/11088913.html