您的位置:首页 > 产品设计 > UI/UE

关于String Stringbuffer StringBuilder

2015-07-10 19:56 477 查看
相同点:都是用来存储字符串的容器类

不同点:

String是定长的字符串,一旦实例化后大小就不能改变

Stringbuffer是变长字符串,是线程安全的

StringBuilder是变长的字符串,是线程不安全的

String不能对已有的字符串进行添加操作,普通的str+“sfsdf”等,虽然是将后边的字符串拼接到了str 上,但是在内存上是将原先的str指向的内存空间舍弃了,又重新申请了一段空间,获得了新的地址引用,而原先的变成了垃圾。StringBuilder和StringBuffer都提供了append()和insert()方法进行字符串的添加操作,是在原先的地址进行的添加操作

String字符串中的==操作比较的是引用的地址是否相同例:

String str1="asd";

String str2="asd";

显然str1==str2是 false,不只是在String 中在引用类型的变量之间进行比较时,比较的是引用地址,只有在基本数据类型中比较的才是数据本身
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: