在我的应用程序中,我想将此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:动作,喜剧,家庭
答案 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"