StringBuffer类的构造方法
- A:StringBuffer的构造方法:
* public StringBuffer():无参构造方法。(构造一个其中不带字符的字符串缓冲区,其初始容量为16个字符。)
* public StringBuffer(int capacity):指定容量的字符串缓冲区对象
* public StringBuffer(String str):指定字符串内容的字符串缓冲区对象 - B:StringBuffer的方法:
* public int capacity():返回当前容量。 理论值(不掌握)
* public int length():返回长度(字符数)。 实际值 - C:案例演示
* 构造方法和长度方法的使用
如果字符串缓冲区的容量超出了16个怎么办?
1. 每个字符串缓冲区都有一定的容器。只要字符串缓冲区所包含的字符序列的长度没有超出此容量,就无需分配新的内部缓冲区数组。如果内部缓冲区溢出,则此容量自动增大。
2. 从JDK5开始,为该类补充一个单个线程使用的等价类,即StringBuilder。与该类相比,通常应该优先使用StringBuilder类,因为它支持所有相同的操作,但由于不执行同步,所以速度更快。
package com.heima.stringbuffer;
public class Demo01_StringBuffer {
public static void main(String[] args) {
StringBuffer sb1 = new StringBuffer();
System.out.println(sb1.length()); //容器中的字符个数,实际值
System.out.println(sb1.capacity()); //容器的初始容量,理论值
StringBuffer sb2 = new StringBuffer(10);
System.out.println(sb2.length());
System.out.println(sb2.capacity());
StringBuffer sb3 = new StringBuffer("heima");
System.out.println(sb3.length()); //实际字符的个数
System.out.println(sb3.capacity()); //字符串的length + 初始容量
}
}