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

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

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

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

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

参考:StackOverFlow

最新文章

  1. HTML5 WebSocket
  2. RabbitMQ的几种典型使用场景
  3. hdu 4784 Dinner Coming Soon(spfa + 优先队列)
  4. UML学习笔记2
  5. atitit.二进制数据无损转字符串网络传输
  6. linux下从源代码安装git
  7. A. Difference Row
  8. Python你必须知道的十个库
  9. 超快速使用docker在本地搭建hadoop分布式集群
  10. jquery validate扩展验证方法
  11. Vue.js + Seajs 实例(包含vue-router使用)
  12. 201521123004 《Java程序设计》第10周学习总结
  13. 【树链剖分】洛谷P3379 树链剖分求LCA
  14. java位移运算符 转
  15. TreeView 节点拖拽
  16. JSP页面分页显示数据
  17. FTPService工具类
  18. Oracle 导出的表不全,以及数据库版本不同导入报错
  19. position的absolute与fixed,absolute与relative共同点与不同点
  20. Mac下搭建lamp

热门文章

  1. Web模糊测试工具Powerfuzzer
  2. js右下角弹窗代码(实测好用)
  3. 正确理解hadoop 2.x 的环形缓冲区: (一) MR环形缓冲区的结构
  4. linux 之体验(JDK7+Tomcat7+MySQL5.5)部署环境
  5. Vue 引入ElementUI 2.0.11:依赖未发现的问题
  6. gray-code——找规律
  7. Ant Design 3.0 使用案例
  8. java 表示当前时间的第二天的几点
  9. 深入Asyncio(七)异步上下文管理器
  10. 禁用android studio自身的ndk编译disable automatic ndk-build call