Java中String,StringBuilder,StringBuffer的区别
来源:互联网 发布:购买淘宝小号 编辑:程序博客网 时间:2024/06/14 10:34
基本概念
1.String
String是个final类,不能被继承。同时相应的对象也是一个不可变对象,一旦创建就不能修改它的值。平时对于String的修改都是重新创建一个新的 对象,然后把新的值保存进去的。
2.StringBuffer
StringBuffer是一个对象可变的类,对他进行修改的时候不会像String那样重新创建一个对象。
3.StringBuilder
StringBuilder也是一个对象可变的类,对他进行修改的时候不会像String那样重新创建一个对象。StringBuilder和StringBuffer的区别就是StringBuilder的方法不是线程安全的了,但是速度快。
线程安全
如果进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他变量的值也和预期的是一样的,就是线程安全的。
建议
少量数据操作,可以使用String;如果是单线程操作大量数据,则用StringBuilder;如果是多线程,则使用StringBuffer。
不要使用String的“+”进行连接操作,使用StringBuffer和StringBuilder的append操作。
使用StringBuilder比StringBuffer仅能够提升10%-15%的性能,一般情况下不确定是否会有多线程的情况比较下,还是选择StringBuffer比较的保险。
0 0
- JAVA中String、StringBuffer、StringBuilder的区别
- Java中String,StringBuffer,StringBuilder的区别?
- JAVA中String、StringBuffer、StringBuilder的区别
- java中String、StringBuilder、StringBuffer的区别
- Java中String, StringBuffer, StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- Java中String,StringBuffer,StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- Java中String、StringBuffer、StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- java中String、StringBuffer、StringBuilder的区别
- react-native 写一个大的checkbox
- TK1学习笔记三:安装OpenCV
- DB2第一步 — 创建表
- 第二届CCPC女生赛 粗略题解(要做重现的不要看哦)
- 如何在局域网访问Tomcat项目
- Java中String,StringBuilder,StringBuffer的区别
- 最短路径—Dijkstra算法和Floyd算法
- 动态规划经典问题:01背包
- 管理oracle企业管理数据库控制器
- 1019. 数字黑洞 (20)
- python numpy
- LeetCode121 Best Time to Buy and Sell Stock
- Python Watchdog 实行对文件或目录的监控
- Binder的应用层的核心类