对于字符串的拼接这里笔者用了两中方法,一种是无返回值如下的示例1,另一种是有返回值的示例2,这里笔者用的StringBuilder()来完成字符串的拼接,为了让读者明白StringBuilder()的作用,这里我将用这两个题目来做对比。
示例1:
package com.Test;
public class PinJieTest03 {
public static void main(String[] args) {
int[] arr={1,2,3,4};
arrayWay(arr);
System.out.println();
}
public static void arrayWay(int[] arr){
StringBuilder sb=new StringBuilder();
System.out.print("[");
for(int i=0;i<arr.length;i++){
if (i==arr.length-1){
System.out.print(arr[i]);
}else {
System.out.print(arr[i]+", ");
}
}
System.out.println("]");
}
}
示例2:
package com.Test;
//拼接字符串
public class PinJie {
public static void main(String[] args) {
int[] arr={1,2,3,4};
String s = arrayToString(arr);
System.out.println(s);
}
public static String arrayToString(int[] arr){
StringBuilder sb=new StringBuilder();
sb.append("[");
for (int i=0;i<arr.length;i++){
if(i==arr.length-1){
sb.append(arr[i]);
}else {
sb.append(arr[i]).append(", ");
}
}
sb.append("]");
System.out.println("我是:"+sb);
String ss=sb.toString();
return ss;
}
}
红色的勾画与蓝色的勾画就是笔者为了说明StringBuilder()的地方,两者得到意思都是相同,为了将数组里的数字打印出来,并且最后前后都有中括号,不同的是示例1是无返回值的,示例2是有返回值的,并且笔者认为示例2的append()很方便,因为append(任意类型)可以添加任意数据,并且返回对象本身(返回对象本身的作用与体现在笔者上一篇文章有讲解),StringBuilder()也不会造成堆里空间的浪费。