黑马程序员技术交流社区
标题:
字符串处理
[打印本页]
作者:
陈雪平
时间:
2012-12-19 19:57
标题:
字符串处理
本帖最后由 陈雪平 于 2012-12-28 21:10 编辑
java提供了String StringBuffer 和StringBuider来处理字符串,但三者之间到底是怎么运用的,今天看的不是很懂,望叼丝们用通俗点的语言解释下,谢喽!!
作者:
李培根
时间:
2012-12-19 20:07
String是一个类,常见的功能有获取,转换,判断和比较。
StrifbBuffer是字符串缓冲区,可以理解为存储数据的容器,与String不同的是,它长度可变,提供了比String更加全面的功能。
StringBuilder提供了和StringBuffer相同的功能,只是线程是不同步的,速度更快,同等条件下优先实用StringBuilder
作者:
高境
时间:
2012-12-19 20:09
1.三者在执行速度方面的比较:StringBuilder > StringBuffer > String
2.String <(StringBuffer,StringBuilder)的原因
String:字符串常量
StringBuffer:字符创变量
StringBuilder:字符创变量
StringBuilder:线程非安全的
StringBuffer:线程安全的
当我们在字符串缓冲去被多个线程使用是,JVM不能保证StringBuilder的操作是安全的,虽然他的速度最快,但是可以保证StringBuffer是可以正确操作的。当然大多数情况下就是我们是在单线程下进行的操作,所以大多数情况下是建议用StringBuilder而不用StringBuffer的,就是速度的原因。
对于三者使用的总结:
1.如果要操作少量的数据用 = String
2.单线程操作字符串缓冲区 下操作大量数据 = StringBuilder
3.多线程操作字符串缓冲区 下操作大量数据 = StringBuffer
作者:
孙辉辉
时间:
2012-12-19 21:08
三者在执行速度方面的比较:StringBuilder > StringBuffer > String
对于StringBuffer 和StringBulder
StringBuffer 是线程同步 线程安全的 多线程
StringBulder 是线程不同步的 单线程
对于三者使用的总结: 1.如果要操作少量的数据用 = String
2.单线程操作字符串缓冲区 下操作大量数据 = StringBuilder
3.多线程操作字符串缓冲区 下操作大量数据 = StringBuffer
。。不知道屌丝们的语言通俗不。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2