Java 中的String 类具有不变性,即一旦被创建, 就不能更改。
例如:
String str = new String("Hello");
System.out.println(str + " World");
输出为Hello World, 但是str并没有变,因此需要一个新的内存空间来存储 Hello World。 这样的操作多了就会占用很多内存。因此StringBuilder 和StringBuffer类就是为了解决这个问题。
StringBuffer 是线程安全的, StringBuilder不是,因此它的性能也较高。通常优先考虑StringBuilder.
附StringBuilder的常用函数:
StringBuilder str = new StringBuilder("Hello");
append(参数);str.append("world");//此时没有创建新的对象
insert(位置,参数);
String toString();
int length();