简述 String,StringBuffer与StringBuilder

String
Sting在赋值的是后是不会被修改的,会重新创建一个String对象,之前存储的值将被保存 例如:

Sting  str = "hello";
str = str + "java";

此时创建的Sting类型的数据有3个 “hello” “java” “hellojava”(不包括之前有存过)导致内存空间的浪费

StringBuffer 和 StringBuilder
StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。

StringBuffer:
效率低,线程安全(多数情况下使用)

StringBuild:
效率高,线程不安全

三者的区别:
String 允许被赋予空值,而另外两个不允许
Sting赋值后不可被修改,后者可以

使用场景:
String:数据量少,且不经常对其修改
StringBuffer:线程操作字符串缓冲区下操作大量数据
Stringbulider:线程操作字符串缓冲区下操作大量数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值