1. StringBuffer的构造方法:
(1)StringBuffer():
(2)StringBuffer(CharSequence seq):
(3)StringBuffer(int capacity):
(4)StringBuffer(String str):
2. 案例演示:
1 package cn.itcast_01; 2 3 /* 4 * 线程安全(多线程讲解) 5 * 安全 -- 同步 -- 数据是安全的 6 * 不安全 -- 不同步 -- 效率高一些 7 * 安全和效率问题是永远困扰我们的问题。 8 * 安全:医院的网站,银行网站 9 * 效率:新闻网站,论坛之类的 10 * 11 * StringBuffer: 12 * 线程安全的可变字符串。 13 * 14 * StringBuffer和String的区别? 15 * 前者长度和内容可变,后者不可变。 16 * 如果使用前者做字符串的拼接,不会浪费太多的资源。 17 * 18 * StringBuffer的构造方法: 19 * public StringBuffer():无参构造方法 20 * public StringBuffer(int capacity):指定容量的字符串缓冲区对象 21 * public StringBuffer(String str):指定字符串内容的字符串缓冲区对象 22 * 23 * StringBuffer的方法: 24 * public int capacity():返回当前容量。 理论值 25 * public int length():返回长度(字符数)。 实际值 26 */ 27 public class StringBufferDemo { 28 public static void main(String[] args) { 29 // public StringBuffer():无参构造方法 30 StringBuffer sb = new StringBuffer(); 31 System.out.println("sb:" + sb); 32 System.out.println("sb.capacity():" + sb.capacity()); 33 System.out.println("sb.length():" + sb.length()); 34 System.out.println("--------------------------"); 35 36 // public StringBuffer(int capacity):指定容量的字符串缓冲区对象 37 StringBuffer sb2 = new StringBuffer(50); 38 System.out.println("sb2:" + sb2); 39 System.out.println("sb2.capacity():" + sb2.capacity()); 40 System.out.println("sb2.length():" + sb2.length()); 41 System.out.println("--------------------------"); 42 43 // public StringBuffer(String str):指定字符串内容的字符串缓冲区对象 44 StringBuffer sb3 = new StringBuffer("hello"); 45 System.out.println("sb3:" + sb3); 46 System.out.println("sb3.capacity():" + sb3.capacity()); 47 System.out.println("sb3.length():" + sb3.length()); 48 } 49 }
运行的结果如下: