A:StringBuffer类概述
通过JDK提供的API,查看StringBuffer类的说明
线程安全的可变字符序列
B:StringBuffer和String的区别
String是一个不可变的字符序列
StringBuffer是一个可变的字符序列
用String和StringBuffer将数组转化成字符串两种方法比较
思路
String的方法
int [] arr = {1,2,3};
String s3 = "[";
for (int i = 0;i < arr.length ;i++){
if (i == arr.length - 1){
s3 = s3 + arr[i] + "]";
}
else{
s3 = s3 + arr[i] + ",";
}
}
StringBuffer的方法
好处String会产生垃圾,StringBuffer不会,只会创建一个对象.因为最后输出的结果才是想要的,之前的结果都会成为垃圾,消耗内存,故应该用StringBuffer。
public class change {
public static void main(String[] args) {
int[] arr = {1 , 2 , 3};
System.out.println (arrayToString (arr)); //输出结果
}
public static String arrayToString(int[] arr) {
StringBuffer sb = new StringBuffer ( ); //创建字符串缓冲对象
sb.append ("["); //将[添加到缓冲区
for (int i = 0; i < arr.length; i++) { //遍历数组
//sb.append(arr[i] + ","); //这样没有],同时产生了更多的垃圾。
if (i == arr.length - 1) {
sb.append (arr[ i ]).append ("]");
} else {
sb.append (arr[ i ]).append (", ");
}
}
return sb.toString (); //返回结果
}
}