黑马程序员技术交流社区
标题:
stringbuilder与string有什么区别呢?
[打印本页]
作者:
鲜学良
时间:
2012-12-17 10:20
标题:
stringbuilder与string有什么区别呢?
本帖最后由 鲜学良 于 2012-12-17 21:34 编辑
stringbuilder与string有什么区别呢?
作者:
李先洋
时间:
2012-12-17 10:24
StringBuilder可以随意更改字符串的长度,String会初始一个长度,但是更改会再次重新分配内存空间,性能损耗很大。对于需要频繁变动字符串长读的变量最好定义为StringBuilder。
作者:
黑马黄涛
时间:
2012-12-17 10:27
String类是不可变类,任何对String的改变都会引发新的String对象的生成...也就是内存多出一个对象...
而StringBuffer则是可变类,任何对它所指代的字符串的改变都不会产生新的对象,这是两者最大的区别...
作者:
刘斌
时间:
2012-12-17 19:04
StringBuilder可以随意更改字符串的长度,存储空间的是动态扩展的,对其实例上做增删改,并不会重新分配存储空间。初始化一个StringBuilder 之后,它会自动申请一个默认的StringBuilder 容量(默认值是16)
String会初始一个长度,但是更改会再次重新分配内存空间,性能损耗很大。相当于一个常量,如果要改变它,实际上是新生成了一个实例,有新的存储空间。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2