JAVA学习:String StringBuilder StringBuffer
String类:
String类是不可变类,被final修饰,每次进行修改会使大量副本字符串对象留在内存中,因此效率低下。
Stirng s1="a";
String s2="b";
String s3="c";
String a=s1+s2+s3;
会在内存空间里产生 “a”,“b”,“c”,“ab”,“abc” 5个字符串,及其浪费内存空间
StringBuilder和StringBuffer类似,成员方法几乎相同,均为可变序列,无final修饰,一次只会new一个新的对象
StringBuilder效率较高,线程不安全
StringBuffer效率较低,线程安全
多线程操作字符串缓冲区下操作大量数据 StringBuffer;
单线程操作字符串缓冲区下操作大量数据 StringBuilder。