ArrayList转为逗号分隔String

很多时候需要转换List为String,以逗号分隔,有可能还不需要括号,这里记录下常用的两种转换方法。

References:

以如下的List为例:

List<String> list = new ArrayList<>();
list.add("LT1");
list.add("LT2");
list.add("LT3");
list.add("LT4");

List<String> list2 = new ArrayList<>();
list2.add("LT233");

通常的转换如下:

System.out.println(Arrays.toString(list.toArray()));
// Output:
// [LT1, LT2, LT3, LT4]

System.out.println(Arrays.toString(list2.toArray()));
// Output:
// [LT233]

// 由于ArrayList的父类AbstractCollection重写了toString()方法,因此可以直接使用toString():
System.out.println(list);

但是这种带括号的可能不是我们想要的,有时候就是需要一个逗号分隔的字符串而已,如下:

String listStr = String.join(",", list);
System.out.println(listStr);
// Output:
// LT1,LT2,LT3,LT4

String listStr2 = String.join(",", list2);
System.out.println(listStr2);
// Output:
// LT233

或者使用Java8的Lambda:

String listLambda = list.stream().collect(Collectors.joining(","));
System.out.println(listLambda);
// Output:
// LT1,LT2,LT3,LT4

String listLambda2 = list2.stream().collect(Collectors.joining(","));
System.out.println(listLambda2);
// Output:
// LT233

标签: none

添加新评论

ali-01.gifali-58.gifali-09.gifali-23.gifali-04.gifali-46.gifali-57.gifali-22.gifali-38.gifali-13.gifali-10.gifali-34.gifali-06.gifali-37.gifali-42.gifali-35.gifali-12.gifali-30.gifali-16.gifali-54.gifali-55.gifali-59.gif

加载中……