源码解析---------Arrays之toString()
package cn.delingw;
public class Demo {
public static void main(String[] args) {
// 创建数组
int a[] = new int[10];
// 随机给数组赋值(随机整数--------0-100之间,取不到100)
for (int i = 0; i < a.length; i++) {
a[i] = (int) (Math.random() * 100);
}
// 调用 toString方法
System.out.println(toString(a));
}
// toString方法
public static String toString(int[] a) {
// 判断数组是否为空
if (a == null) {
return "Null";
}
// 数组大小-1 (数组的下标从0开始)
int iMax = a.length - 1;
//如果等于-1,则说明是空数组(0-1=-1)
if (iMax == -1) {
return "[]";
}
// 创建一个容器
StringBuilder stringBuilder = new StringBuilder();
//开始用左中括号
stringBuilder.append("[");
/**
* 做循环 将数组的数依次加到容器中,当i和iMax一致时,则返回右中括号
* 否则继续循环,并且每个数之间用逗号隔开
*/
for (int i = 0; ; i++) {
stringBuilder.append(a[i]);
if (i == iMax)
return stringBuilder.append("]").toString();
stringBuilder.append(",");
}
}
}