【JAVA】StringBuilder、Stringbuffer、String

StringBuilder、StringBuffer和String

运行速度:

StringBuilder>StringBuffer>String

StringBuilder和StringBuffer创建的是变量,对变量的操作就直接是对该对象的操作
String创建的是一个值,对这个值的修改都会涉及到创建和回收的过程。


线程安全:

StringBuilder线程不安全,String和StringBuffer线程安全

StringBuffer支持同步锁,很多方法可以带有synchronized关键字,对象在字符串缓冲区被多个线程使用时可以保证线程是安全的;

String存储字符串的char数组和该char数组相关的信息都是final的,所以String对象生成的时候在内存里面就是不变的。

但StringBuilder的方法则没有该关键字,所以不能保证线程安全,有可能会出现一些错误的操作。


总结:

如果需要频繁地对字符串进行操作,使用StringBuffer,如果对字符串操作比较少使用String
StringBuilder使用用于单线程对字符操作比较多的情况
StringBuffer适合于多线程的项目中




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值