1.使用谷歌的Joiner转换

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

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

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

3.直接使用stream流实现

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

4.使用for循环遍历集合

public static <T> String parseListToStr(List<T> list){
    StringBuffer sb = new StringBuffer();
    if(listIsNotNull(list)) {
      for(int i=0;i<=list.size()-1;i++){
        if(i<list.size()-1){
          sb.append(list.get(i) + ",");
        }else {
          sb.append(list.get(i));
        }
      }
    }
    return sb.toString();
  }

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

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。