对于String 与StringBuffer 和StringBuilder的总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对于String 与StringBuffer 和StringBuilder的总结相关的知识,希望对你有一定的参考价值。

StringBuffer
 
1,线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改
2,虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。
3,StringBuffer 上的主要操作是 append 和 insert 方法,append 方法始终将这些字符添加到缓冲区的末端;而 insert 方法则在指定的点添加字符。
4,每个字符串缓冲区都有一定的容量。只要字符串缓冲区所包含的字符序列的长度没有超出此容量,就无需分配新的内部缓冲区数组。如果内部缓冲区溢出,则此容量自动增大.
StringBuilder
 
根StringBuffer几乎一样,只是一个线程安全一个不安全的事情,StringBuilder不安全,不保证同步,StringBuffer是同步的,线程是安全的,但是StringBuilder比StringBuffer快,
String
 
1,字符串是常量;它们的值在创建之后不能更改。字符串缓冲区支持可变的字符串。因为 String 对象是不可变的,所以可以共享。
2,字符串串联符号("+")以及将其他对象转换为字符串的特殊支持。字符串串联是通过StringBuffer或者StringBuffer和append方法实现的,StringBuffer与StringBuilder不可以使用
3,String 重写了equals的方法,但是StringBuffer与StringBuilder没有,

以上是关于对于String 与StringBuffer 和StringBuilder的总结的主要内容,如果未能解决你的问题,请参考以下文章

StringBuffer与StringBuilder异同对比分析

String StringBuffer StringBuilder总结

String与StringBuffer,StringBuilder

String,StringBuilder和StringBuffer区别

String能变化吗?和StringBuffer的区别是什么?

随笔⑤ String,StringBuilder与StringBuffer类的比较