java 12-1 StringBuffer类

时间:2021-02-13 06:41:00

  线程安全(多线程讲解)
      安全 -- 同步 -- 数据是安全的--效率低一些
      不安全 -- 不同步 -- 数据不安全--效率高一些
      安全和效率问题是永远困扰我们的问题。
        安全:医院的网站,银行网站
        效率:新闻网站,论坛之类的

  StringBuffer:
      线程安全的可变字符串。

  StringBuffer和String的区别?
      前者长度和内容可变,后者不可变。
      如果使用前者做字符串的拼接,不会浪费太多的资源。

  StringBuffer的构造方法:
    1、public StringBuffer():无参构造方法
    2、public StringBuffer(int capacity):指定容量的字符串缓冲区对象
    3、public StringBuffer(String str):指定字符串内容的字符串缓冲区对象

  StringBuffer的方法:
    1、public int capacity():返回当前容量 理论值
    2、public int length():返回长度(字符数) 实际值

 public class StringBufferDemo {
public static void main(String[] args) {
// public StringBuffer():无参构造方法
StringBuffer sb = new StringBuffer();
System.out.println("sb:" + sb);
System.out.println("sb.capacity():" + sb.capacity());
System.out.println("sb.length():" + sb.length());
System.out.println("--------------------------"); // public StringBuffer(int capacity):指定容量的字符串缓冲区对象
StringBuffer sb2 = new StringBuffer(50);
System.out.println("sb2:" + sb2);
System.out.println("sb2.capacity():" + sb2.capacity());
System.out.println("sb2.length():" + sb2.length());
System.out.println("--------------------------"); // public StringBuffer(String str):指定字符串内容的字符串缓冲区对象
StringBuffer sb3 = new StringBuffer("hello");
System.out.println("sb3:" + sb3);
System.out.println("sb3.capacity():" + sb3.capacity());
System.out.println("sb3.length():" + sb3.length());
}
}

StringBuffer一部分功能和String一样,后面说的是StringBuffer特有的功能,详情看API