本帖最后由 关静刚 于 2013-12-7 09:28 编辑
方法1:
public static String arrayToString(int[] arr){
String str = "[";
for (int i = 0; i < arr.length; i++) {
if(i!=arr.length-1)
str+=arr+", ";
else
str+=arr+"]";
}
return str;
}
方法2:
public static String arrayToString_2(int[] arr){
StringBuilder sb = new StringBuilder();
sb.append("[");
for (int i = 0; i < arr.length; i++) {
if(i!=arr.length-1)
sb.append(arr+", ");
else
sb.append(arr+"]");
}
return sb.toString();
}
个人理解:
方法1中,遍历后,连接符连接一个字符串,就在字符串常量池中产生一个成员,循环遍历后产生比较多的成员。
方法2中,将连接的内容,往字符串常量池中装,循环一次装一次,一次性返回一字符串。
有点懵,我的理解中有哪些不妥的地方,我应该怎么去理解这两种写法呢?这两种写法有什么不同呢? |