JDK 13已于2019年9月17日上线GA, 此处列出了重要的新功能。 新功能之一是“文本块”。 这样可以轻松地编写多行字符串,而不必在拆分成不同的行时进行串联。
让我们快速了解创建多行字符串的不同方法:
String aBlock = """
SELECT id, first_name, last_name, dob
FROM person
WHERE id = ?
""";String aIndentedBlock = """SELECT id, first_name, last_name, dobFROM personWHERE id = ?
""";String anotherBlock = """
SELECT id, first_name, last_name, dob
FROM person
WHERE id = ?""";System.out.print(aBlock);
System.out.print(aIndentedBlock);
System.out.print(anotherBlock);
System.out.println("This comes in the same line");
这些是编写多行字符串的一些无效方法:
// String thisIsInvalid = """This is invalid""";
// String thisIsALsoInvalid = """THis is also invalid
// """;
文本不能在块的开头引号(即“”””)之后立即开始,而是必须在下一行开始。
我们可以在多行字符串中包含“,”:
System.out.println("""Block containing "" ' '""");
块引号的结尾可以与换行符的文本结尾在同一行:
String thisIsValid = """
This is valid""";
完整的代码可以在这里找到。
翻译自: https://www.javacodegeeks.com/2019/10/jep-355-text-blocks-in-jdk-13.html