String和StringBuffer的区别
String对象表示字符串,字符串对象是一旦创建是不可变的,如果对String对象表示的字符串进行了修改,其实是创建了新的字符串对象,只是改变了String对象的引用而已。
StringBuffer对象表示字符串缓冲区,这个字符串缓冲区是不会改变的,只是对字符串缓冲区中的内容在进行改变。
所以当实际开发中需要高频对字符串进行修改时,建议使用StringBuffer。
代码演示:
String演示将一个字符串数组转成字符串。
public static String strArrayToString(String[] args) {
String s = "";
for (int i = 0; i < args.length; i++) {
//每拼接一次就会新建一个字符串对象
s+=args[i];
}
return s;
}
使用StringBuffer完成
public static String strArrayToString2(String[] args) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < args.length; i++) {
//容器不变,只是在不断的修改容器内容
sb.append(args[i]);
}
return sb.toString();
}