String、StringBuffer、StringBuilder剖析---细节决定成败!
2009-03-29 22:04
411 查看
String ---------- 不可变字符串
StringBuffer -------------同步可变字符串
StringBuilder-----------------构建字符串
String
这是我们最常见的了,String的一个关键就是String类型的字符串是不可变的,我们要修改String类型的字符串时,我们需要进行创建新的String类型,然后用引用指向它,这样很影响效率,尤其是对于那些经常改动的字符串。
StringBuffer
看上面的定位就很清楚了,这是一个支持多线程访问的,易于修改的对象。当我们使用的字符串经常修改时,我们的StringBuffer并不是重新创建一个字符串,而是修改本身,这使得效率得倒提高。
同时,我们的StringBuffer还支持同步。
StringBuilider
StringBuilder的简化版,我们的StringBuilder是不支持同步的,一般在单线程中使用,效率比StringBuffer高。
一般情况下,StringBuilder效率 > StringBuffer > String
但是,在直接使用常量字符串连接时,“Hello” + “World!”String的效率要高于StringBuffer。
使用时的几点注意事项:
1多线程考虑
2制定容量
StringBuffer -------------同步可变字符串
StringBuilder-----------------构建字符串
String
这是我们最常见的了,String的一个关键就是String类型的字符串是不可变的,我们要修改String类型的字符串时,我们需要进行创建新的String类型,然后用引用指向它,这样很影响效率,尤其是对于那些经常改动的字符串。
StringBuffer
看上面的定位就很清楚了,这是一个支持多线程访问的,易于修改的对象。当我们使用的字符串经常修改时,我们的StringBuffer并不是重新创建一个字符串,而是修改本身,这使得效率得倒提高。
同时,我们的StringBuffer还支持同步。
StringBuilider
StringBuilder的简化版,我们的StringBuilder是不支持同步的,一般在单线程中使用,效率比StringBuffer高。
一般情况下,StringBuilder效率 > StringBuffer > String
但是,在直接使用常量字符串连接时,“Hello” + “World!”String的效率要高于StringBuffer。
使用时的几点注意事项:
1多线程考虑
2制定容量
相关文章推荐
- 深入源码剖析String,StringBuilder,StringBuffer
- 深入源码剖析String,StringBuilder,StringBuffer
- 深入源码剖析String,StringBuilder,StringBuffer
- String、StringBuffer、StringBuilder细节
- Java你所不知道的细节——String、StringBuffer、StringBuilder(1)
- 深入源码剖析String,StringBuilder,StringBuffer
- java-基础-String、StringBuilder以及StringBuffer剖析
- 深入剖析java中String、StringBuffer、StringBuilder的区别
- StringBuffer、StringBuilder与String剖析
- 深入源码剖析String,StringBuilder,StringBuffer
- String,StringBuffer与StringBuilder的区别
- 细节决定成败
- String,StringBuffer与StringBuilder的区别??
- 探秘Java中String、StringBuilder以及StringBuffer
- java之String、StringBuffer、StringBuilder
- 通过源码分析String、StringBuffer和StringBuilder
- String、StringBuffer与StringBuilder之间区别
- String、StringBuffer与StringBuilder之间区别
- String,StringBuffer与StringBuilder的区别??
- String、StringBuffer、StringBuilder