String和StringBuffer的区别
展开全部
简单说就是StringBuffer对象的内容可以修改,String对象一旦产生后就不可以被修改,重新赋值其实是重新生成了一个新的对象。
StringBuffer在进行字符串处理时,不生成新的对象,String类中则不是,所以在内存使用上要比String类节省开销,尤其是大量字符串操作的时候。所以如果经常需要对一个字符串进行修改,例如在循环中对字符串进行追加、删除等操作,强烈建议使用StringBuffer,而不是String。
例如:
String s = "abc";
s = s + "d";
System.out.print(s);// result : abcd 此时s是一个新的对象。
StringBuffer在进行字符串处理时,不生成新的对象,String类中则不是,所以在内存使用上要比String类节省开销,尤其是大量字符串操作的时候。所以如果经常需要对一个字符串进行修改,例如在循环中对字符串进行追加、删除等操作,强烈建议使用StringBuffer,而不是String。
例如:
String s = "abc";
s = s + "d";
System.out.print(s);// result : abcd 此时s是一个新的对象。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询