现在的位置: 首页 > 综合 > 正文

String, StringBuffer, StringBuilder区别

2013年08月04日 ⁄ 综合 ⁄ 共 448字 ⁄ 字号 评论关闭

String, StringBuffer, StringBuilder
String是不可改变的量,也就是创建了以后就不能修改了
StringBuffer是可变字符序列,对象的值是可改变的
StringBuilder与StringBuffer基本相同,都是可变字符序列,不同点是:StringBuffer是线程安全的,StringBuilder是线程不安全的

弄清楚了三者的原理,就可以在不同场景下使用不同的字符序列了:
1.使用String类的场景
在字符串不经常变化的场景中可以使用String类,例如常量的声明、少量的变量运算
2.使用StringBuffer的场景
在频繁进行字符串的运算(如拼接、替换、删除等),并且运行在多线程的环境中,则可以考虑使用StringBuffer,例如XML解析、HTTP参数解析和封装
3.使用StringBuilder的场景
在频繁进行字符串的运算(如拼接、替换、删除等),并且运行在单线程的环境中,则可以考虑使用StringBuilder,如SQL语句的拼装、JSON封装等

抱歉!评论已关闭.