可变字符串(在操作之后原来的字符串会改变,不能保留原来的字符串)
String 定义完之后不可以改变;如果使用String对其进行频繁的更新之后,就会不停的创建对象;
StringBuilder()单线程,线程不安全,但是速度更快:
用于表示可变字符串;效率高于StringBuffer();
无参构造默认16个字符;
有参的是自己填写;
构造方法:
StringBuilder(String str):创建str.lenth+16的字符串,并添加str进入;
普通方法:
append(使用于多种数据类型):拼接字符串;在更新字符串的时候,只有一个对象参与,效率较高;
delete(int star ,int end):左闭右开区间,删除
deletecharAt(index):按索引删除;
insert(offset(起点),类型):在指定的起点位置增加字符串;
replace(int start,int end):从给定范围内的字符;
reverse():反转字符串;无参数,直接使用对象调用;
StringBuffer()多线程;线程安全;效率率低;(比StringBuilder对了一个同步方法修饰符synchronized)
用于表示可变字符串;
可变字符串和不可变字符串之间的转换
部分的字符串的方法可变字符串可以使用,但是在不可以调用的时候,就将可变字符串转换为不可变字符串;
例如concains(