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;
}
或
public static <T> String parseListToStr3(List<T> list){
String result = list.stream().map(T::getName).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();
}
注意:在转换集合前应该都统一做判空处理
Java集合转换方法:Joiner、Lambda与Stream实践
文章展示了四种在Java中将列表转换为字符串的方法,包括使用谷歌的Joiner工具类,利用lambda表达式和StringBuffer,以及直接操作Stream流的两种方式。所有方法都涉及到集合的遍历和元素拼接,最后提到了在转换前应对集合进行判空处理。
829

被折叠的 条评论
为什么被折叠?



