黑马程序员技术交流社区
标题:
???String 和StingBuffer的区别??
[打印本页]
作者:
付左军
时间:
2012-4-21 13:03
标题:
???String 和StingBuffer的区别??
大侠们给解释下
作者:
徐鑫
时间:
2012-4-21 13:06
StringBuffer是可变的而String是不可变的.
而且String用得多个的话会占用不同的内存.
如:String str = "bb";
str = "aa";
前一个bb的内存地址不变,当又给它赋值为aa时它又指向aa的地址.
String s ;
每次对s进行赋值操作是都将生成一个新的String实例;
StingBuffer sb;
sb则不然,它始终是同一个实例
所以在经常动态的改变字符串的值是用StingBuffer效率比较高,java生成一个实例的代价较大。
作者:
邵中国
时间:
2012-4-21 14:39
String是不可变类,如果经常对字符串进行各种各样的修改,使用String内存开销大
StringBuffer允许修改,而不是每个不同的字符串都要生成一个新的对象
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2