【发布时间】:2021-08-04 21:31:00
【问题描述】:
输入:
2,3,1
5,2,3
预期输出:
2,5,3,2,1,3
所有数字都应该用逗号分隔。
我的代码:
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input1 = scanner.nextLine();
char[] elms1 = input1.toCharArray();
String input2 = scanner.nextLine();
char[] elms2 = input2.toCharArray();
for (int i = 0; i < elms1.length; i++)
System.out.print(elms1[i] + "," + elms2[i]);
}
唉,它输出了一个带有额外逗号的意外结果,它看起来像:
输入:
2,3,1
5,2,3
我的输出是:
2,5,,,3,2,,,1,3
如何消除多余的逗号以获得正确的输出?
【问题讨论】:
-
代码很好,您将输入作为一行,因此 char 数组为 {'2', ',', '3', ',' '1', ','}
-
欢迎来到 Stack Overflow!当您将
2,3,1转换为字符数组时,您显然会得到一个[2, comma, 3, comma, 1]数组,因此您的输出并不意外。您可能正在寻找的是String.split方法,您可以使用它来分割用逗号。我不知道你为什么要首先转换成字符,那么 2 位数字呢? -
您也可以将您的打印语句更改为
System.out.print(elms1[i]+elms1[i+1]+","+elms2[i]+elms2[i+1]);,并将i 增加2 作为i+=2 -
欢迎来到 Stack Overflow!请不要将解决方案公告编辑到问题中。接受(即单击旁边的“勾选”)现有答案之一,如果有的话。如果现有答案尚未涵盖您的解决方案,您还可以创建自己的答案,甚至接受它。