没有合适的资源?快使用搜索试试~ 我知道了~
String、StringBuilder、StringBuffer的区别
需积分: 50 2 下载量 129 浏览量
2017-11-04
15:41:24
上传
评论
收藏 15KB DOCX 举报
温馨提示
试读
3页
关于String、StringBuilder、StringBuffer的本质区别,
资源推荐
资源详情
资源评论
String、StringBuer 与 StringBuilder 之间区别[全屏看文]
最近学习到 StringBuer,心中有好些疑问,搜索了一些关于
String,StringBuer,StringBuilder 的东西,现在整理一下。
关于这三个类在字符串处理中的位置不言而喻,那么他们到底有什么优缺点,到底什么时候该用谁呢?下
面我们从以下几点说明一下
1.三者在执行速度方面的比较:StringBuilder> StringBuer > String
2.String <(StringBuer,StringBuilder)的原因
String:字符串常量
StringBuer:字符创变量
StringBuilder:字符创变量
从上面的名字可以看到,String 是“字符创常量”,也就是不可改变的对象。对于这句话的理解你
可能会产生这样一个疑问rr,比如这段代码:
1Strings="abcd";
2s=s+1;
3System.out.print(s);//result:abcd1
rrr我们明明就是改变了 String 型的变量 s 的,为什么说是没有改变呢? 其实这是一种欺骗,JVM
是这样解析这段代码的:首先创建对象 s,赋予一个 abcd,然后再创建一个新的对象 s 用来 执
行第二行代码,也就是说我们之前对象 s 并没有变化,所以我们说 String 类型是不可改变的对象了,由
于这种机制,每当用 String 操作字符串时,实际上是在不断的创建新的对象,而原来的对象就会变为垃
圾被GC回收掉,可想而知这样执行效率会有多底。
rr而 StringBuer 与 StringBuilder 就不一样了,他们是字符串变量,是可改变的对象,每当我们
用它们对字符串做操作时,实际上是在一个对象上操作的,这样就不会像 String 一样创建一些而外的对
象进行操作了,当然速度就快了。
3.一个特殊的例子:
资源评论
hanhanTwo
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功