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);
相关推荐
间彧40 分钟前
SimpleDateFormat既然不推荐使用,为什么java 8+中不删除此类
java
间彧1 小时前
DateTimeFormatter相比SimpleDateFormat在性能上有何差异?
java
间彧1 小时前
为什么说SimpleDateFormat是经典的线程不安全类
java
MacroZheng1 小时前
横空出世!MyBatis-Plus 同款 ES ORM 框架,用起来够优雅!
java·后端·elasticsearch
用户0332126663672 小时前
Java 查找并替换 Excel 中的数据:详细教程
java
间彧2 小时前
ThreadLocal实现原理与应用实践
java
若水不如远方2 小时前
Netty的四种零拷贝机制:深入原理与实战指南
java·netty
用户7493636848432 小时前
【开箱即用】一分钟使用java对接海外大模型gpt等对话模型,实现打字机效果
java
SimonKing2 小时前
一键开启!Spring Boot 的这些「魔法开关」@Enable*,你用对了吗?
java·后端·程序员