正确使用String 、StringBuffer 、StringBuiler

三种字符串分别为:String 、 StringBuffer  、StringBuilder 。 它们是CharSequence接口的实现类。

String类是不可改变的量,也就是创建后就不能再修改了。

StringBuffer 和 StringBuilder 都是一个可变字符序列,它们与 String一样,在内存中保存的都是一个有序的字符序列(char类型的数组),不同点是StringBuffer 和 StringBuilder 对象的值是可以改变的。


总结几点,在什么情况下使用不同的字符序列:
1.使用String类的场景
    在字符串不经常变化的场景中可以使用String类,例如常量的声明 、 少量的变量运算等。
2.使用StringBuffer类的场景

    在频繁进行字符串的运算(如拼接、替换、删除等),而且运行在 多线程的环境中,这可以考虑使用StringBuffer,例如XML    解析 、 HTTP参数解析和封装等。
3.使用StringBuilder类的场景
    在频繁进行字符串的运算(如拼接 、 替换 、 删除等),并且运行在 单线程的环境中,则可以考虑使用StringBuilder ,例如SQL 语句的拼装 、 JSON封装等。


在性能方面,由于String类的操作都是产生新的String对象,而StringBuilder 和 StsringBuffer 只是一个 字符数组的在扩容而已,所以String类的操作要远忙于StringBuffer 和  StringBuiler 。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值