如何在Array中的每个元素的末尾添加逗号

时间:2017-08-04 17:05:29

标签: java android arraylist

在我的应用程序中,我想将此Library用于显示ArrayList个项目 来自服务器的我的ArrayList:

"genres": [
      "Action",
      " Comedy",
      " Family"
    ]

我在下面为show items编写代码:

private String[] mostlyMatchedKeywordsStrings;
    private List<String> cloudChipList = new ArrayList<>();
mostlyMatchedKeywordsStrings = serialResponse.getData().getGenres();
                for (String str : mostlyMatchedKeywordsStrings) {
                    cloudChipList.add(str);
                    if (cloudChipList.size() > 0) {
                        infoSerialFrag_GenreChips.addChip(str);
                    }
                }

告诉我如下:

  

Ganre:动作喜剧家庭

但我想告诉我这样的事情:

   Ganre:动作,喜剧,家庭

3 个答案:

答案 0 :(得分:5)

您正在寻找String.join()

List<String> foo = new ArrayList<>();
foo.add("foo");
foo.add("bar");
foo.add("baz");
System.out.println(String.join(", ", foo)); 

答案 1 :(得分:1)

您可以转换为List并使用String.join(", ", list),也可以使用StringJoiner

StringJoiner sj = new StringJoiner(", ");
for (String s : mostlyMatchedKeywordsStrings) {
    sj.add(s);
}
String joined = sj.toString();

请注意,这需要Java 8;如果你正在使用Java&lt; 8,你必须做Professor901的答案。

答案 2 :(得分:0)

一般来说,您可以执行以下操作:

String[] items = { "Foo", "Bar" };
StringBuilder result = new StringBuilder();
for(int i = 0; i < items.length;) {
    result.append(items[i]);

    if(++i < items.length)
        result.append(", ");
}
String str = result.toString(); // "Foo, Bar"

ArrayLists也是如此,但你会list.get(i)而不是items[i]

ArrayList<String> list= new ArrayList<String>();
list.add("Foo"); list.add("Bar");
StringBuilder result = new StringBuilder();
for(int i = 0; i < list.size(); ) {
    result.append(list.get(i));

    if(++i < list.size())
        result.append(", ");
}
String str = result.toString(); // "Foo, Bar"