String,StringBuffer,StringBuilder简单对比

简单介绍:

1.String类:String的值是不可变的,导致每次对String的操作都会生成新的String对象,不仅效率低下,而且浪费内存空间。

2.StringBuffer:StringBuffer的值是可变的,任何对它指向的字符串的操作都不会产生新的对象。

3.StringBuilder:和StringBuffer功能类似,主要区别在于StringBuffer类的方法是多线程,安全的,而StringBuilder类的方法不是线程安全的。

 

主要区别:

(1)String:不可变 ,

    StringBuffer,StringBuilder:可变

(2)StringBuffer:线程安全

    StringBuilder:线程不安全

(3)一般情况下,速度从快到慢:StringBuilder〉StringBuffer〉String,这种比较是相对的,不是绝对的。

 

总结:

(1)如果要操作少量的数据用 String

(2)单线程操作字符串缓冲区下大量数据用 StringBuilder

(3)多线程操作字符串缓冲区下大量数据用 StringBuffer

posted @ 2015-04-23 11:46  丶小八戒  阅读(140)  评论(0编辑  收藏  举报