你们肯定用过String变量来存一些跨越多行的值吧?比如:
- 给AI的提示词
- JSON数据
- HTML/XML代码
- 程序代码片段
传统方式的痛苦
想象一下你要存下面这段JSON:
json |
用老方法得写成这样:
java
String myJson = "{\n" + |
简直要命啊!看到没:
- 每行都要用+连接
- 所有引号都要用\转义
- 还要手动加\n换行
代码丑到亲妈都不认识
而且你们发现没?上面的JSON其实少了个逗号!但在这一团乱麻里根本看不出来!
救星来了:文本块(Text Blocks)
Java 15开始有了文本块,现在可以这样写:
java |
是不是清爽多了?就像直接复制粘贴一样简单!
文本块使用指南
基本规则
- 用三个引号"""开头和结尾
- 开头引号后必须换行
- 自动保留缩进格式
空白字符处理
- 前导空格:以最左边的非空字符为准
- 末尾空格:默认会自动去掉
- 想保留空格?用\s标记
续行技巧
如果不想在字符串里换行(比如写超长URL),可以在行尾加\:
java |
实际应用场景
1. 存储JSON/XML
再也不用担心漏逗号、少引号了!
2. HTML模板
java
String html = """ |
3. SQL查询
java
String query = """ |
4. 多行日志消息
java
logger.error(""" |
5. 有趣的ASCII艺术
java
String art = """ |
为什么这么好用?
代码更干净:不用一堆+和\n了
更易读:直接看到最终字符串的样子
少犯错:容易发现语法错误
智能提示:IDE能识别JSON/HTML语法
迁移小贴士
如果你的项目还在用老Java版本:
- 升级到Java 15+
- 用IDE的"Convert to Text Block"功能一键转换
- 享受写代码的快乐!
文本块就像是Java送给程序员的一份礼物,让我们处理多行字符串时不再抓狂。赶紧用起来吧!