关于String,StringBuffer与StringBuilder的区别

  • String是字符串常量对象,对其进行改变时会相当影响效率,特别注意在循环中直接拼接字符串效率非常差

  • 如果你想改变字符串的值,更加推荐使用StringBuffer与StringBuilder两种可变的字符串对象。

  • StringBuffer与StringBuilder的主要区别在于线程安全上:

    • StringBuffer是线程安全型,StringBuilder非线程安全。
    • 如果确定应用只在单线程上运行时,更推荐使用StringBuilder,因为其运行效率更高。
  • 使用场景总结:

    • 如果确定字符串不需改变,则使用String。
    • 字符串如需改变,并且只在单线程上运行时,使用StringBuilder。
    • 字符串如需改变,并且需要运用在多线程环境里时,使用StringBuffer保证线程安全。

参考:StackOverFlow

posted @ 2015-06-12 16:39  honoka  阅读(...)  评论(...编辑  收藏