【发布时间】:2017-11-29 01:46:18
【问题描述】:
我遇到了这个问题,如果想遍历一个数组并打印出用逗号分隔的内容,它会在最后打印出一个额外的内容。 我进行了一些搜索,但找不到适合这种情况的答案。
代码:
public String toString(){
String hold= "";
for(int i = 0; i < array.length; i ++){
if(array[i] == true){
hold + = i;
if(i != array.length-1)
hold+= ",";
}
}
return hold;
}
【问题讨论】:
-
只检查当前迭代是否是最后一个,如: if (i == arr.length - 1) System.out.print(element);否则 System.out.print(element + ", ");
-
对于偶尔的循环,我使用一个布尔值,它在第一个循环上设置并在每个其他循环上插入一个逗号。但是我最近一直在编写一个代码生成器,这种模式出现了很多,所以我创建了一个类来表示它。内部是维护和布尔值,以确定它的“打印”方法是否被多次调用。只有这样它才会输出所需的值(在构造函数中传递)。