说明:
1.JDK1.5之后出现了StringBuilder,一个可变的字符串序列
2.他的用法基本StringBuffer相同
3.StringBuilder和StringBuffer不同的地方在于 StringBuffer是线程安全的
4.单线程、不需要线程安全的情况下,处于性能的考虑,优先选择StringBuilder
5.更详细的API请参见 http://docs.oracle.com/javase/7/docs/api/ 搜索StringBuilder
Java代码 收藏代码
package com.cxy.e;
public class StringBuilderTest
{
public static void main(String[] args)
{
StringBuilder s = new StringBuilder();
//追加
s.append("wwt").append(" show");
System.out.println(s);
//插入
s.insert(3," begin"); //从序号3(第一个字符为序号0)的位置插入 begin字符串
System.out.println(s);
//删除
s.delete(3, 3+" begin".length()); //将上面插入的 begin字符串,删除[3,8),前闭后开
System.out.println(s);
//字符串长度和容量大小
System.out.println("字符串长度:"+s.length());
System.out.println("字符串容量:"+s.capacity());//这个还不太明白
System.out.println("字符串中序号是1的字符是:"+s.charAt(1));
s.append(" StringBuilder");
System.out.println(s);
System.out.println("i第一次出现的位置序号:"+s.indexOf("i"));
System.out.println("i最后一次出现的位置序号:"+s.lastIndexOf("i"));
//替换
s.replace(4,8, "test"); //从序号4到序号8之间的内容替换为test
System.out.println(s);
System.out.println("字符串反序输出:"+s.reverse());
s.reverse();
//字符串截取
System.out.println("截取序号4到8的内容:"+s.substring(4, 8));
//转换成String
System.out.println(s.getClass().getSimpleName());
System.out.println(s.toString().getClass().getSimpleName());
}
}
执行结果:
wwt show
wwt begin show
wwt show
字符串长度:8
字符串容量:16
字符串中序号是1的字符是:w
wwt show StringBuilder
i第一次出现的位置序号:12
i最后一次出现的位置序号:17
wwt test StringBuilder
字符串反序输出:redliuBgnirtS tset tww
截取序号4到8的内容:test
StringBuilder
String