A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

我是听说了String和StringBuffer,知道都是存储字符串的,但是不知道有什么区别?

6 个回复

倒序浏览
String不可变c长度字符串,StringBuffer为可变长度字符串,String一点new了内容就不能在改变,而StringBuffer可以通过自身的append方法来改变字符串也就更节约空间
回复 使用道具 举报
String 是一个数据类型也是一个包,StringBuffer是一个没有固定长度的容器,用来存各种类型的数据。
回复 使用道具 举报
String 是常态化,一般都用String 底层优化也较多,功能也比StringBuffer多(个人认为)
StringBuffer是容器,有以下特点:
1.长度是可变化的
2.可以操作多个数据类型(String char int double boolean 等)
3.最终会通过toString方法变成字符串

另外 StringBuilder 和 StringBuffer 是一样的
只是StringBuilder效率较高,但是多线程不安全
回复 使用道具 举报
noiary 发表于 2014-12-17 21:21
String 是常态化,一般都用String 底层优化也较多,功能也比StringBuffer多(个人认为)
StringBuffer是容 ...

意思是stringBuffer是一个容器,存储各种类型数据,最后还要转化为字符串,存进String?
回复 使用道具 举报
逛逛能学不少啊
回复 使用道具 举报
noiary 高级黑马 2014-12-18 13:20:43
7#
我只是一只菜鸟 发表于 2014-12-18 12:02
意思是stringBuffer是一个容器,存储各种类型数据,最后还要转化为字符串,存进String? ...

要不要转成字符串看实际需求吧。

String是对象,不可更改,所以不涉及到“存进”。

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马