stringbuffer与stringbuilder的区别?
来源:互联网 发布:mac软件合集百度云 编辑:程序博客网 时间:2024/06/04 01:08
1. 在执行速度方面的比较:StringBuilder > StringBuffer 2. StringBuffer与StringBuilder,他们是字符串变量,是可改变的对象,每当我们用它们对字符串做操作时,实际上是在一个对象上操作的,不像String一样创建一些对象进行操作,所以速度就快了。3. StringBuilder:线程非安全的 StringBuffer:线程安全的 当我们在字符串缓冲去被多个线程使用是,JVM不能保证StringBuilder的操作是安全的,虽然他的速度最快,但是可以保证StringBuffer是可以正确操作的。当然大多数情况下就是我们是在单线程下进行的操作,所以大多数情况下是建议用StringBuilder而不用StringBuffer的,就是速度的原因。对于三者使用的总结:1.如果要操作少量的数据用 = String 2.单线程操作字符串缓冲区 下操作大量数据 = StringBuilder3.多线程操作字符串缓冲区 下操作大量数据 = StringBuffer
StringBuffer属于线程安全,相对为重量级
StringBuilder属于非线程安全,相对为轻量级
线程安全的概念: 网络编程中许多线程可能会同时运行一段代码。当每次运行结果和单独线程运行的结果是一样的,叫做线程安全。 为了达到线程安全的目的在一定程度上会降低程序的性能。所以在单线程中,StringBuilder的性能要比StringBuffer高。多线程为了线程安全需要采用StingBuffer。其实在线程不考虑的情况下,要是程序对性能的要求不高,太在意这两者的区别就没有什么意义(个人理解)
0 0
- StringBuffer 与 StringBuilder的区别?
- StringBuilder与StringBuffer的区别
- StringBuffer 与 StringBuilder的区别
- StringBuffer与StringBUilder的区别
- StringBuffer与StringBuilder的区别
- StringBuilder与StringBuffer的区别
- StringBuilder与StringBuffer的区别
- StringBuilder与StringBuffer的区别
- StringBuilder与StringBuffer的区别
- StringBuilder与StringBuffer的区别
- StringBuilder与StringBuffer的区别
- StringBuffer与StringBuilder的区别
- StringBuilder与StringBuffer的区别
- StringBuilder与StringBuffer的区别
- StringBuilder与StringBuffer的区别
- StringBuilder与StringBuffer的区别
- StringBuilder与StringBuffer的区别
- StringBuilder与StringBuffer的区别
- LeetCode 66 Plus One
- IP地址的三种表示格式及在Socket编程中的应用
- Java之类的封装,继承,多态
- 主题分析的两篇综述
- Eclipse视图:navigator、 package explorer、 project explorer
- stringbuffer与stringbuilder的区别?
- 在页面加载后在设置embed 的src 怎么实现?
- 轮廓3
- 【经典算法】——KMP,深入讲解next数组的求解
- 原来JSF页面可以这样将前台处理的数据传到后台处理!
- CDATA
- js实现倒计时
- stigiDddA.258
- C#学习之接口