String StringBuffer StringBuilder 区别

String : 字符串常量  安全

StringBuffer  : 线程安全的字符串变量多线程

StringBuilder  : 非线程安全的字符串变量app

String 类型,String是不可变对象,对String对象的每一次赋值,都是先生成一个新的String对象,而后将原对象指针指向新的String对象,因此每次对String对象赋值都会对性能产生影响。性能

StringBuffer类型,每次对StringBuffer对象执行操做,是对改对象自己操做,而不会生成新的对象,因此在对字符串频繁执行改变操做的时候建议使用StringBuffer.ui

String str = "1"+"2"+"3"+"4"+"5"+"6"; 此状况建议使用String线程

String str1 = "1";指针

String str2 = "2";对象

String str3 = "3";字符串

String str4 = "4";同步

String str = str1+str2+str3+str4;  此状况建议使用StringBuffer, 

StringBuffer buffer= new StringBuilder();

buffer.append("1");

buffer.append("2");

buffer.append("3");

buffer.append("4");

StringBuffer线程安全的可变字符序列,可安全地用于多线程。

StringBuilder 能够看做是 StringBuffer 的一个特例,用法相同,多在单线程中使用来处理字符串操做(非线程同步),StringBuilder性能要比StringBuffer快。

相关文章
相关标签/搜索