本帖最后由 mnxnm 于 2015-6-2 11:30 编辑
请看以下代码第12行代码处 if (i == iMax) ,每次循环都要判断一次,i == iMax,判断是否要添加"]"符号
这不是影响性能吗,如果直接每次 b.append(a+","),最后把","替换成"]"不就好了
不用每次都去判断是不是要结束了要添加"]"了
哈哈,其实,我想错了,因为i == iMax这一步其实就是for循环的终止条件,循环一次检验一次,
满足条件就 return b.append(']').toString()并结束循环,哈哈,
- public static String toString(int[] a) {
- if (a == null)
- return "null";
- int iMax = a.length - 1;
- if (iMax == -1)
- return "[]";
- StringBuilder b = new StringBuilder();
- b.append('[');
- for (int i = 0; ; i++) {
- b.append(a[i]);
- if (i == iMax)
- return b.append(']').toString();
- b.append(", ");
- }
- }
复制代码 |