2020年9月15日にJDK 15がリリースされました。現在はJDK 17がメインリリースですが、多くの人はまだJDK 8にとどまっています。JDK 15での使用法を体験したい場合は、今少し学びましょう文本块
。この記事では、Java 15 で導入された新機能に焦点を当てます文本块(Text Blocks)
。
1. テキストブロックとは?
テキスト ブロックは、複数行の文字列をモデル化するために以前に提供されたソリューションを簡素化し、読みやすさを向上させるために設計された新しい形式の文字列リテラルです。これらは、単純な複数行の文字列の作成と操作をより簡単に、より簡単に、より柔軟にします。これらは """ 区切り文字を取り、埋め込まれた空白を含め、入力されたテキストの書式を保持します。
2. テキスト ブロックを使用する理由
従来の Java 文字列では、複数行の文字列を連結するために文字列連結 + が使用されます。この方法では、コードが洗練されていないだけでなく、複雑な SQL ステートメントや XML ステートメントを作成するときにコードが読みにくく、理解しにくくなります。テキスト ブロックを使用すると、この問題を解決でき、インデントによって複数行のテキストを視覚的に表現できるため、コードの複雑さと冗長性が軽減されます。
3. テキストブロックの使い方は?
テキスト ブロックを使用する場合は、次の点に注意してください。
- 3 つの二重引用符 """ で開始および終了します。
- 改行を含む任意の文字を 3 つの二重引用符内に挿入できます。
- インデントがサポートされており、読みやすさを向上させるために使用できます。
- \ エスケープ文字を使用して、二重引用符またはその他の特殊文字を挿入できます。
- 末尾の """ は、それ自体が 1 行になければなりません。
簡単な例を次に示します。
public class TextBlockExample {
public static void main(String[] args) {
String s1 = """
This is a simple
text block example.
""";
System.out.println(s1);
String s2 = """
{"a": 1, "b": 2}
""";
System.out.println(s2);
String s3 = """
<xml>
<body>hello, world</body>
</xml>
""";
System.out.println(s3);
}
}
复制代码
出力は次のとおりです。
This is a simple
text block example.
{"a": 1, "b": 2}
<xml>
<body>hello, world</body>
</xml>
复制代码
ご覧のとおり、テキスト ブロックは入力されたテキストの書式設定を保持し、コードはよりきれいに見えます。
4. SQL でのテキスト ブロックの適用
実際の開発では、通常、複雑な SQL ステートメントを記述する状況に遭遇します。従来の Java 文字列連結を使用すると、SQL ステートメントの理解と保守が困難になる可能性があります。テキスト ブロックを使用すると、SQL ステートメントの記述が非常に便利になり、コードが簡潔になり、保守が容易になります。
テキスト ブロックを使用して SQL ステートメントを記述する例を次に示します。
public class SqlExample {
public static void main(String[] args) {
String sql = """
SELECT *
FROM users
WHERE age > 18
""";
System.out.println(sql);
}
}
复制代码
出力は次のとおりです。
SELECT *
FROM users
WHERE age > 18
复制代码
ご覧のとおり、コードの可読性を維持しながら、テキスト ブロックを使用して SQL ステートメントを記述することは非常に便利です。
5. HTML でのテキスト ブロックの適用
同様に、テキスト ブロックを使用して HTML コードを記述すると、コードの読みやすさとメンテナンスの容易さも向上します。
テキスト ブロックを使用して HTML コードを記述する例を次に示します。
public class HtmlExample {
public static void main(String[] args) {
String html = """
<html>
<head>
<title>Hello, World!</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
""";
System.out.println(html);
}
}
复制代码
出力は次のとおりです。
<html>
<head>
<title>Hello, World!</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
复制代码
ご覧のとおり、テキスト ブロックを使用して HTML コードを記述すると、コードの構造がより明確になり、読みやすく、維持しやすくなります。
6. まとめ
この記事では、Java 15 で導入された新機能であるテキスト ブロックを紹介します。テキスト ブロックは、複数行の文字列をモデル化するために以前に提供されたソリューションを簡素化し、読みやすさを向上させるために設計された新しい形式の文字列リテラルです。テキスト ブロックを使用すると、従来の文字列連結を回避でき、SQL や HTML などの複数行の文字列を記述する際のコードの読みやすさと保守性を向上させることができます。