StringBuilder
类与StringBuffer
类都代表的可变字符序列,同时他们有共同的父类:AbstractStringBuilder
类。
StringBuilder
类与StringBuffer
类的区别
1.StringBuilder
类是jdk1.5
才提供的,线程不安全,没有做线程同步检测,因此,效率较高。
2.StringBuilder
类是jdk1.0
才提供的,线程安全,会做线程同步检测,开发效率较低。
3.两个二类中的方法很类似。下面主要以StringBuilder
类为例,来讲述方法的作用。
方法介绍
1.构造方法
构造方法可有参也可以无参。
//StringBuilder builder=new StringBuilder();
StringBuilder builder=new StringBuilder("中华人民共和国");
2.末尾添加操作
builder.append("北京市");
builder.append("123开发区");
builder.append("005街道");
StringBuilder
类的对象是字符可变序列,所以直接可以改变字符串的内容。不需要再改变builder
引用变量的指向。
3.中间添加操作
builder.insert(7,"华北地区");
从索引为7的地方开始添加,添加后华
索引就变为了7
。
4.删除字符串
builder.delete(7,11);
从索引为7的地方开始删,删到索引为11可结束,一共删了(11-7)
个字符。
5.替换字符串
builder.replace(0,7,"中国");
从索引为0处开始替换,替换到索引为7处结束,一共替换了(7-0)
个字符。
6.字符串反转
builder.reverse();
将字符串进行反转。
7StringBuilder
---->Srting
String str=builder.toString();
总结
StringBuilder
类中1常用的三个方法:
1.创建StringBuilder
的对象。
2.末尾添加字符串。
3.StringBuilder
---->Srting
便于输出。
整体代码
public class TestStringBuilder {
public static void main(String[] args) {
//可以有参也可无参
//StringBuilder builder=new StringBuilder();
StringBuilder builder=new StringBuilder("中华人民共和国");
//末尾添加操作
builder.append("北京市");
builder.append("123开发区");
builder.append("005街道");
builder.insert(7,"华北地区");
builder.delete(7,11);
builder.replace(0,7,"中国");
//字符串反转
builder.reverse();
//StringBuilder---->String
String str=builder.toString();
System.out.println(str);
}
}