在最后打印出一组时,我会出现一个额外的逗号。这个例子在这里:
{1,} {1,2,3,4,}
这是打印逗号的部分。我正在阅读有关StringJoiner的内容,但不确定我是否可以将其作为字符串。
if (works[i]) {
System.out.print(" ");
System.out.print(i+5 + ",");
}
也试过以下:
String str = i+5 + ",";
str = str.replaceAll(", $", "");
System.out.print(str);
然后它也会出现:
{1,2 3,4}
{1}
答案 0 :(得分:0)
在构建最后一个逗号分隔字符串后,使用以下代码替换最后一个逗号:
str = str.replaceAll(",$", ""); //regex which will replace last comma
让我分享一下我的测试代码。您可以尝试查看代码的错误。
public class Test {
public static void main(String[] args) {
int i = 0;
String str = "1,2,3,";
str = str.replaceAll(",$", ""); // You put space between , and $ here..
System.out.print(str);
}
}
<强>输出:强>
1,2,3
答案 1 :(得分:-1)
您可以使用流:
int[] array = new int[] { 1, 2, 3, 4 };
String collect =
Arrays.stream(array).mapToObj(i -> String.valueOf(i)).collect(Collectors.joining(","));
System.out.println(collect);
答案 2 :(得分:-1)
试试这个..
我假设IF块处于for循环
if(works[i]){
String str = i+5 + ",";
}
在for循环之外的执行此操作..
str = str.substring(0, str.length()-1);
System.out.print(str);