List转字符串

List:["a","b","c"]

转换后:a,b,c

1、String.join

java 复制代码
  		// 1. 创建一个List集合 数量不可变
		List<String> list = List.of("a", "b", "c");
		//list = [a, b, c]
		System.out.println("list = " + list);
		String join = String.join(",", list);
		//join = a,b,c
		System.out.println("join = " + join);

2、谷歌工具类 Joiner

import com.google.common.base.Joiner;

java 复制代码
  		// 1. 创建一个List集合 数量不可变
		List<String> list = List.of("a", "b", "c");
		//list = [a, b, c]
		System.out.println("list = " + list);
		String join = Joiner.on(",").join(list);
		//join = a,b,c
		System.out.println("join = " + join);

3、forEach

java 复制代码
  		// 1. 创建一个List集合 数量不可变
		List<String> list = List.of("a", "b", "c");
		//list = [a, b, c]
		System.out.println("list = " + list);
		StringBuffer join = new StringBuffer();
		//和list.forEach没啥区别
		//list.stream().forEach(s -> join.append(s).append(","));
		//可以并行处理
		//list.parallelStream().forEach(s -> join.append(s).append(","));
		list.forEach(s -> join.append(s).append(","));
		//join = a,b,c
		System.out.println("join = " + join);

4、list.stream

java 复制代码
 		// 1. 创建一个List集合 数量不可变
		List<String> list = List.of("a", "b", "c");
		//list = [a, b, c]
		System.out.println("list = " + list);
		//map(String::toString)将流中的每个元素转换为字符串
		String join = list.stream().map(String::toString).collect(Collectors.joining(","));
		//map(String::valueOf)也将流中的每个元素转换为字符串,但对于非字符串类型的元素,会先调用toString()方法转换为字符串
		String join1 = list.stream().map(String::valueOf).collect(Collectors.joining(","));
		//join = a,b,c
		System.out.println("join = " + join);

5、apache 工具类

import org.apache.tomcat.util.buf.StringUtils;

java 复制代码
 		// 1. 创建一个List集合 数量不可变
		List<String> list = List.of("a", "b", "c");
		//list = [a, b, c]
		System.out.println("list = " + list);
		String join = StringUtils.join(list, ',');
		//join = a,b,c
		System.out.println("join = " + join);

import org.apache.commons.lang.StringUtils;

复制代码
  		// 1. 创建一个List集合 数量不可变
		List<String> list = List.of("a", "b", "c");
		//list = [a, b, c]
		System.out.println("list = " + list);
		//String join = StringUtils.join(list, ",");   单引号,双引号都可以
		String join = StringUtils.join(list, ',');
		//join = a,b,c
		System.out.println("join = " + join);

6、for 循环

java 复制代码
  		StringBuffer join = new StringBuffer();
		// 1. 创建一个List集合 数量不可变
		List<String> list = List.of("a", "b", "c");
		//list = [a, b, c]
		System.out.println("list = " + list);
		for (int i = 0; i < list.size(); i++) {
			join.append(list.get(i));
			if (i != list.size() - 1) {
				join.append(",");
			}
		}
		//join = a,b,c
		System.out.println("join = " + join);
相关推荐
她和夏天一样热几秒前
【实战篇】设计模式在开发中的真实应用
java·开发语言·设计模式
小帅学编程2 分钟前
设计模式笔记
java
ss27319 分钟前
线程池工作机制:从任务提交到执行的完整决策流程
java·开发语言
yaoxin52112330 分钟前
276. Java Stream API - 使用 flatMap 和 mapMulti 清理数据并转换类型
java·开发语言·windows
Vic1010133 分钟前
【无标题】
java·数据库·分布式
摇滚侠36 分钟前
Java 零基础全套视频教程,异常,处理异常,自定义异常,笔记 124-129
java·笔记
伯明翰java1 小时前
【无标题】springboot项目yml中使用中文注释报错的解决方法
java·spring boot·后端
企微自动化1 小时前
企业微信二次开发:深度解析外部群主动推送的实现路径
java·开发语言·企业微信
_修铁路的1 小时前
【Poi-tl】 Word模板填充导出
java·word·poi-tl
武子康1 小时前
Java-216 RocketMQ 4.5.1 在 JDK9+ 从0到1全流程启动踩坑全解:脚本兼容修复(GC 参数/CLASSPATH/ext.dirs)
java·大数据·分布式·消息队列·系统架构·rocketmq·java-rocketmq