Java中String和StringBuffer,StringBuilder的区别小结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Kair_Wu/article/details/49798451

关于StringStringBuffer的区别:

String是不可变对象,StringBuffer是可以再编辑的;

String是常量,StringBuffer是变量;

String是字符串常量;

StringBuffer是字符串变量(线程安全);

StringBuilder字符串变量(非线程安全)

String 类代表字符串。Java 程序中的所有字符串字面值(如 “abc” )都是String类的对象。字符串是常量;它们的值在创建之后不能改变。所以可以共享它们。StringBuffer是字符串缓存区,它的内容可以被修改,长度也可以改变,StringBuffer类是线程安全的,也就是说多个线程可以安全的访问StringBuffer对象。StringBuilderStringBuffer类似,都是字符串缓冲区,但StringBuilder不是线程安全的,如果你只是在单线程中使用字符串缓冲区,那么StringBuilder的效率会更高些。值得注意的是StringBuilder是在JDK1.5版本中增加的。以前版本的JDK不能使用该类。

String是不可变类型,StringBuffer是可变类型

String可以进行常量赋值 String str="123";

也可以进行new运算操作创建对象。

StringBuffer只能通过new运算创建对象。

猜你喜欢

转载自blog.csdn.net/Kair_Wu/article/details/49798451
今日推荐