在 Java 中,将字符串数组(String[])转换为字符串(String)有多种方法,具体取决于你想要的拼接方式(例如是否需要分隔符),以下是几种常见的实现方式:

(图片来源网络,侵删)
方法 1:使用 String.join()(推荐)
适用于用特定分隔符(如逗号、空格等)拼接数组元素。
String[] strArray = {"Hello", "World", "Java"};
String result = String.join(", ", strArray); // 用逗号和空格分隔
System.out.println(result); // 输出: Hello, World, Java
特点:
- 简洁高效,Java 8+ 支持。
- 可自定义分隔符。
方法 2:使用 Arrays.toString()
直接将数组转换为字符串(格式为 "[element1, element2, ...]")。
String[] strArray = {"Hello", "World", "Java"};
String result = Arrays.toString(strArray);
System.out.println(result); // 输出: [Hello, World, Java]
特点:

(图片来源网络,侵删)
- 适用于调试或快速查看数组内容。
- 结果包含方括号和默认分隔符(逗号+空格)。
方法 3:使用 StringBuilder 或 StringBuffer
适用于需要自定义拼接逻辑(如复杂分隔符或额外处理)。
String[] strArray = {"Hello", "World", "Java"};
StringBuilder sb = new StringBuilder();
for (String s : strArray) {
if (sb.length() > 0) {
sb.append(", "); // 添加分隔符
}
sb.append(s);
}
String result = sb.toString();
System.out.println(result); // 输出: Hello, World, Java
特点:
- 灵活性高,适合复杂拼接逻辑。
StringBuilder(非线程安全)比StringBuffer(线程安全)性能更好。
方法 4:使用 Java 8 Stream API
适用于函数式编程风格,支持自定义分隔符和转换逻辑。
String[] strArray = {"Hello", "World", "Java"};
String result = String.join(", ", Arrays.stream(strArray).toArray(String[]::new));
// 或直接使用 String.join(方法1更简洁)
更复杂的 Stream 示例(如添加前后缀):
String result = Arrays.stream(strArray)
.collect(Collectors.joining(", ", "[", "]")); // 输出: [Hello, World, Java]
特点:
- 支持链式操作,适合复杂场景。
- 可读性较好,但性能略低于
String.join()。
方法 5:循环拼接(基础方法)
适用于简单场景,但代码稍显冗长。
String[] strArray = {"Hello", "World", "Java"};
String result = "";
for (int i = 0; i < strArray.length; i++) {
if (i > 0) {
result += ", "; // 分隔符
}
result += strArray[i];
}
System.out.println(result); // 输出: Hello, World, Java
注意:频繁使用 拼接字符串会导致性能问题(因字符串不可变性),建议改用 StringBuilder。
如何选择?
| 需求场景 | 推荐方法 |
|---|---|
| 简单拼接(用分隔符) | String.join() |
| 调试或快速查看数组 | Arrays.toString() |
| 复杂拼接逻辑(如条件分隔) | StringBuilder/StringBuffer |
| 函数式编程风格 | Java 8 Stream API |
| 基础需求(不介意性能) | 循环拼接 |
根据你的具体需求选择最合适的方法!
