关于String,StringBuffer与StringBuilder的区别
2024-09-07 18:14:37
String是字符串常量对象,对其进行改变时会相当影响效率,特别注意在循环中直接拼接字符串效率非常差。
如果你想改变字符串的值,更加推荐使用StringBuffer与StringBuilder两种可变的字符串对象。
StringBuffer与StringBuilder的主要区别在于线程安全上:
- StringBuffer是线程安全型,StringBuilder非线程安全。
- 如果确定应用只在单线程上运行时,更推荐使用StringBuilder,因为其运行效率更高。
使用场景总结:
- 如果确定字符串不需改变,则使用String。
- 字符串如需改变,并且只在单线程上运行时,使用StringBuilder。
- 字符串如需改变,并且需要运用在多线程环境里时,使用StringBuffer保证线程安全。
最新文章
- HTML5 WebSocket
- RabbitMQ的几种典型使用场景
- hdu 4784 Dinner Coming Soon(spfa + 优先队列)
- UML学习笔记2
- atitit.二进制数据无损转字符串网络传输
- linux下从源代码安装git
- A. Difference Row
- Python你必须知道的十个库
- 超快速使用docker在本地搭建hadoop分布式集群
- jquery validate扩展验证方法
- Vue.js + Seajs 实例(包含vue-router使用)
- 201521123004 《Java程序设计》第10周学习总结
- 【树链剖分】洛谷P3379 树链剖分求LCA
- java位移运算符 转
- TreeView 节点拖拽
- JSP页面分页显示数据
- FTPService工具类
- Oracle 导出的表不全,以及数据库版本不同导入报错
- position的absolute与fixed,absolute与relative共同点与不同点
- Mac下搭建lamp
热门文章
- Web模糊测试工具Powerfuzzer
- js右下角弹窗代码(实测好用)
- 正确理解hadoop 2.x 的环形缓冲区: (一) MR环形缓冲区的结构
- linux 之体验(JDK7+Tomcat7+MySQL5.5)部署环境
- Vue 引入ElementUI 2.0.11:依赖未发现的问题
- gray-code——找规律
- Ant Design 3.0 使用案例
- java 表示当前时间的第二天的几点
- 深入Asyncio(七)异步上下文管理器
- 禁用android studio自身的ndk编译disable automatic ndk-build call