StringBuffer和StringBuilder的区别
来源:互联网 发布:域名代理商 编辑:程序博客网 时间:2024/06/08 15:40
StringBuffer和StringBuilder的区别
不同点
- 在速度方面 StringBuilder > StringBuffer
- StringBuffer 是在多线程中操作字符,为了保证线程安全就牺牲了性能
- StringBuilder 是在单线程中操作字符,JVM不能保证它的安全性.
当每次运行结果和单独线程运行的结果是一样的,叫做线程安全。
相同点
- 每当我们用它们对字符串进行操作时,实际上是在对一个对象操作,相对于String的速度更快一些
- 用String进行字符串操作时,大多数情况是要创建一些新的对象进行操作。
- 某些特别情况下, String 对象的字符串拼接其实是被 JVM 解释成了 StringBuffer 对象的拼接,所以这些时候 String 对象的速度并不会比 StringBuffer 对象慢
特殊情况
在特殊情况下,Stringbuffer > String
String s1 = "Hello" + " world" + "!"; //其实就是String s1 = "Hello world !";当然不需要很多时间StringBuffer s2 = new StringBuffer("Hello").append("world").append("!");但是大部分情况下,速度 StringBuffer > String
0 0
- stringbuffer 和stringbuilder的区别
- Stringbuffer和StringBuilder的区别
- StringBuffer 和 StringBuilder 的区别
- StringBuffer和StringBuilder的区别
- StringBuilder和StringBuffer的区别
- StringBuilder和StringBuffer的区别
- StringBuffer 和 StringBuilder 的区别
- stringBuffer和stringBuilder的区别
- StringBuffer和Stringbuilder的区别
- StringBuilder和StringBuffer的区别
- StringBuffer和StringBuilder的区别
- StringBuilder和StringBuffer的区别
- StringBuffer和StringBuilder的区别
- StringBuffer 和 StringBuilder的区别
- StringBuffer和StringBuilder的区别
- StringBuilder和StringBuffer的区别
- StringBuffer和StringBuilder的区别
- StringBuffer和StringBuilder的区别
- Servlet规范相关实例的获取
- CCF 折点计数
- 99乘法表(C语言版)
- mysql大批量去重并导入
- 3Sum Closest - leetcode 16号题目个人题解
- StringBuffer和StringBuilder的区别
- maven教程(二):maven环境搭建
- python 2.7.12 print 汉字或者使用 if 、#时idle 文件不能保存
- 实验楼Linux学习笔记(八)之任务计划crontab
- 程序员如何做到『编程速度又快,Bug 数量又少』?
- C++ 默认构造函数
- javap使用实例图解
- ARM学习视频观後感:ARM那些你得知道的事儿 1-5
- unity多线程的学习-Loom-Loom类