从数组中打印出元素,元素之间除最后一个单词外,用逗号分隔

2022-09-02 02:16:41

我正在从数组列表中打印出元素,并希望在除最后一个单词之外的每个单词之间都有一个逗号。现在我正在这样做:

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

如您所知,它将打印出这样的单词:问题是最后一个逗号,我该如何解决这个问题?所有答案都值得赞赏!one, two, three, four,


答案 1

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

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]);
}

有了 ,你最好使用ListIterator

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

答案 2

我会这样写:

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

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

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


推荐