Java8中将list转换为用逗号隔开的字符串的几种方法?

1.使用谷歌的Joiner转换

1  public static <T> String parseListToStr(List<T> list){
2        String result = Joiner.on(",").join(list);
3        return result;
4  }

2.使用lambda表达式遍历集合

1 public static <T> String parseListToStr2(List<T> list){
2      StringBuffer sb = new StringBuffer();
3      list.stream().forEach(str->{
4          sb.append(str).append(",");
5      });
6      sb.deleteCharAt(sb.length()-1);
7      return sb.toString();
8 }

3.直接使用stream流实现

1 public static <T> String parseListToStr3(List<T> list){
2      String result = list.stream().map(String::valueOf).collect(Collectors.joining(","));
3      return result;
4 }

4.使用for循环遍历集合

 1    public static <T> String parseListToStr(List<T> list){
 2         StringBuffer sb = new StringBuffer();
 3         if(listIsNotNull(list)) {
 4             for(int i=0;i<=list.size()-1;i++){
 5                 if(i<list.size()-1){
 6                     sb.append(list.get(i) + ",");
 7                 }else {
 8                     sb.append(list.get(i));
 9                 }
10             }
11         }
12         return sb.toString();
13     }

注意:在转换集合前应该都统一做判空处理