public class StringBuilderTest {
/**
* StringBuffer和Stringbuilder :使用与内容可以被修改的字符串
* 与String的区别:String是内容不可以修改的字符串。根据下面的例子知道,
* 当你知道字符数据要改变的时候用StringBuffer和Stringbuilder,效率高
*/
public static void main(String[] args) {
int[] arr = {3,1,5,3,8};
String s = arrayToString_2(arr);
System.out.println(s);
}
/**
* 把数组的元素都拼起来,一次性装入StringBuilder中,只创建了一个对象。
* @param arr
* @return
*/
public static String arrayToString_2(int[] arr){
StringBuilder sb = new StringBuilder();//使用StringBulider
sb.append("[");
for (int i = 0; i < arr.length; i++) {
if(i!=arr.length-1)
sb.append(arr[i]+", ");
else
sb.append(arr[i]+"]");
}
return sb.toString();
}
/**
* 将一个int数组变成字符串,字符串连接方法,每次连接都会在字符串常量池中开辟内存,至少开辟了5个空间,效率低
*/
public static String arrayToString(int[] arr){
String str = "[";
for (int i = 0; i < arr.length; i++) {
if(i!=arr.length-1)
str+=arr[i]+", ";
else
str+=arr[i]+"]";
}
return str;
}
}