string.join()是java中用于按指定分隔符拼接字符串的静态方法,支持数组、可变参数及集合(需转数组),空集合返回空字符串,null元素或分隔符会抛nullpointerexception。

Java 中 String.join() 是个静态方法,专门用来用指定分隔符把字符串集合或数组拼成一个字符串,简洁高效,不用手动循环或 StringBuilder。
基本用法:传入分隔符和字符串数组
最常用的是两个参数版本:String.join(CharSequence delimiter, CharSequence... elements)。第二个参数是可变参数,支持直接传字符串数组或多个字符串字面量。
-
String.join("-", "a", "b", "c")→ 返回"a-b-c" -
String.join(", ", new String[]{"apple", "banana", "cherry"})→ 返回"apple, banana, cherry"
拼接 List 或其他集合:先转成数组或用 stream(Java 8+)
String.join() 不直接接受 List<string></string>,需先转为数组。推荐用 list.toArray(new String[0]),避免类型警告。
Java JDK 25 来自 OpenJDK 官方归档,版本为 JDK 25,本条下载地址已指向官方 Windows x64 zip 安装包直链,适合调试旧项目或兼容旧版 Java 运行环境。
List<string> list = Arrays.asList("x", "y", "z");</string>-
String result = String.join(" | ", list.toArray(new String[0]));→"x | y | z" - 如果集合含
null,会抛NullPointerException,拼接前建议过滤或替换
处理非字符串元素:得先转换成字符串
若集合里是数字、对象等,不能直接传给 String.join()。需先映射成字符串,可用 stream().map(Object::toString).toArray(String[]::new)。
List<integer> nums = Arrays.asList(1, 2, 3);</integer>-
String s = String.join(",", nums.stream().map(String::valueOf).toArray(String[]::new));→"1,2,3" - 自定义对象可用
map(o -> o.getName())提取字段再拼接
空集合或 null 的注意事项
空数组或空列表拼接结果是空字符串(""),不会报错;但传 null 作为分隔符或任意元素,都会触发 NullPointerException。
-
String.join(":", new String[]{})→"" -
String.join(":", (String[])null)→ 抛异常 - 安全做法:拼接前判空,或用
Objects.toString(obj, "")替换可能的 null
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










