2026-01-30 09:01:38
在 Java 中实现字符串跨行有以下几种常用方法,可根据不同场景选择:
语法:用三个双引号 """ 包裹多行内容,自动处理换行和缩进。
特点:代码简洁,无需手动添加换行符 \n,自动保留内容格式。
示例:
String text = """
第一行内容
第二行内容
第三行内容
""";
System.out.println(text);输出:
第一行内容
第二行内容
第三行内容
适用场景:长字符串(如 SQL、HTML、JSON)、多行文本直接嵌入代码时。
+ + 换行符 \n语法:通过 + 连接多行字符串,手动添加 \n 实现换行。
示例:
String text = "第一行内容\n" +
"第二行内容\n" +
"第三行内容";注意:\n 在 Windows 中可能需用 \r\n,跨平台建议用 System.lineSeparator()。
StringBuilder/StringBuffer 拼接语法:动态拼接多行字符串,适合循环或条件生成内容。
示例:
StringBuilder sb = new StringBuilder();
sb.append("第一行内容");
sb.append(System.lineSeparator());
sb.append("第二行内容");
String text = sb.toString();优点:性能优于 + 拼接,尤其在高频操作时。
String.join() + 换行符语法:用 String.join() 拼接数组元素,分隔符为换行符。
示例:
String[] lines = {"第一行", "第二行", "第三行"};
String text = String.join(System.lineSeparator(), lines);适用场景:已有字符串数组需合并为多行文本。
语法:直接读取文件内容为多行字符串。
示例:
String text = new String(Files.readAllBytes(Paths.get("file.txt")));优点:保留文件原始格式,适合长文本处理。
| 方法 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 文本块 | 代码简洁,自动处理格式 | 仅支持 Java 13+ | 静态多行文本 |
+ + \n |
兼容所有版本 | 代码冗长,需手动处理换行符 | 简单多行字符串 |
StringBuilder |
高效动态拼接 | 代码稍复杂 | 动态生成内容 |
String.join() |
简洁合并数组元素 | 依赖数组输入 | 数组合并为多行文本 |
System.lineSeparator() 替代硬编码 \n。StringBuilder。通过上述方法,可灵活实现 Java 中字符串的跨行处理。