前言
Jdk17引入了文本块概念,文本块是一个多行字符串文字,它避免了大多数转义的需要,能够比较方便操作字符串
文本块使用
以前使用json
字符串时,需要转义
public class JsonDemo {
public static void main(String[] args) {
String json = "{\n" +
" \"id\": 1\n" +
"}";
System.out.println(json);
}
}
但是使用文本块
之后,可以这么写
public class JsonDemo {
public static void main(String[] args) {
String json = """
{
"id": 1
}
""";
System.out.println(json);
}
}
这种方式不仅让代码更容易编写和理解,还保留了JSON的层次结构和格式,方便调试和维护,但是文本块的写法要记得在第一个"""
换行,否则换编译报错
public class JsonDemo {
public static void main(String[] args) {
String json = """ {
"id": 1
}
""";
System.out.println(json);
}
}
这种会编译报错
总结
文本块不仅保留换行符,还会保留空格和缩进等格式。这使得文本块非常适合编写结构化的文本,如JSON、XML、HTML等,可以更好操作,但是前提是JDK版本要升级到17以上