String,StringBuffer与StringBuilder区别

String,StringBuffer与StringBuilder的区别

String,StringBuffer与StringBuilder区别

一.Java String类—string字符串常量

初始值为"Hello" +字符串 “world” 就开辟出新的内存空间
String的值是不可变的,这就导致每次对String的操作都会生成新的String对象效率低下,浪费资源

二.String Buffer和StringBuilder(都是字符串变量)

StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。
StringBuilder和Stringbuffer相比:
StringBuilder速度快;
StringBuffer 线程安全;
StringBuilder和Stringbuffer都是可变字符串序列,方法也一样;

三者区别:

String,StringBuffer与StringBuilder区别

小结:
(1)如果要操作少量的数据用 String;
(2)多线程操作字符串缓冲区下操作大量数据 StringBuffer;
(3)单线程操作字符串缓冲区下操作大量数据 StringBuilder。