打印出数组中的元素,元素之间有逗号

新手上路,请多包涵

我正在打印出 ArrayList 中的元素,并希望在除最后一个单词之外的每个单词之后都有一个逗号。

现在,我是这样做的:

 for (String s : arrayListWords) {
    System.out.print(s + ", ");
}

它打印出这样的话:

 one, two, three, four,

问题是最后一个逗号。我该如何解决?

原文由 Eri. 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 578
2 个回答

如果第一个单词存在,则单独打印第一个单词。然后先将模式打印为逗号,然后是下一个元素。

 if (arrayListWords.length >= 1) {
    System.out.print(arrayListWords[0]);
}

// note that i starts at 1, since we already printed the element at index 0
for (int i = 1; i < arrayListWords.length, i++) {
     System.out.print(", " + arrayListWords[i]);
}

使用 List ,你最好使用 Iterator

 // assume String
Iterator<String> it = arrayListWords.iterator();
if (it.hasNext()) {
    System.out.print(it.next());
}
while (it.hasNext()) {
    System.out.print(", " + it.next());
}

原文由 Sotirios Delimanolis 发布,翻译遵循 CC BY-SA 3.0 许可协议

我会这样写:

 String separator = "";  // separator here is your ","

for (String s : arrayListWords) {
    System.out.print(separator + s);
    separator = ",";
}

如果 arrayListWords 有两个单词,它应该打印出 A,B

原文由 Mav 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题