StringBuffer
StringBuffer : 由于String是不可变的,所以导致String对象泛滥,在频繁改变字符串对象的应用中,需要使用可变的字符串缓冲区类。
特点:
- 默认缓冲区的容量是16。
- StringBuffer : 线程安全的所有的缓冲区操作方法都是同步的。效率很低。
1. 添加方法
StringBuffer("jack") 在创建对象的时候赋值
append() 在缓冲区的尾部添加新的文本对象
insert() 在指定的下标位置添加新的文本对象
StringBuffer sb = new StringBuffer("jack"); sb.append(true); sb.append('a'); sb.append(97).append(34.0).append(new char[]{'o','o'}); // 链式编程 System.out.println( sb.toString() ); // 输出缓冲区的中文本数据 sb = new StringBuffer("jack"); sb.insert( 2, "java" ); // jajavack System.out.println( sb.toString() );
2. 查看
toString() 返回这个容器的字符串 indexOf(String str) 返回第一次出现的指定子字符串在该字符串中的索引。 substring(int start) 从开始的位置开始截取字符串
3. 修改(U)
replace(int start int endString str) 使用给定 String 中的字符替换此序列的子字符串中的字符。该子字符串从指定的 start 处开始,一直到索引 end - 1 处的字符 setCharAt(int index char ch) 指定索引位置替换一个字符
4. 删除(D)
5. 反序
reverse() 把字符串反序输出。
2 StringBuilder
StringBuilder 是JDK1.5之后提出的,线程不安全,但是效率要高。用法与StringBuffer类似。