Javaのテキストブロックとは?初心者向けやさしい解説

こんにちは。ゆうせいです。

今回はJavaの「テキストブロック」について、プログラミング初心者や新人エンジニアの方に向けて、わかりやすく丁寧に解説します。
この機能を使いこなすと、長い文字列をスッキリ書けるようになるんです!


テキストブロックとは何か?

通常の文字列との違い

Javaでは、文字列(String)を "(ダブルクォーテーション) で囲んで表現しますよね。

String message = "こんにちは。\nJavaの世界へようこそ!";

これに対してテキストブロックは、複数行の文字列をそのまま書ける機能です。

String message = """
    こんにちは。
    Javaの世界へようこそ!
    """;

特徴まとめ

特徴通常の文字列テキストブロック
書き方"で囲む"""(3つのダブルクォート)で囲む
改行の扱い\nを使う必要あり自然に改行される
コードの見やすさ低め高い

どんなときに便利なの?

たとえば、HTMLやSQLのような複数行の文字列を書くときに便利です。

例:HTML

String html = """
    <html>
        <body>
            <h1>Hello, world!</h1>
        </body>
    </html>
    """;

例:SQLクエリ

String sql = """
    SELECT *
    FROM users
    WHERE age > 20
    ORDER BY name;
    """;

このように、文字列をそのまま貼り付けられるので、メンテナンスも楽になります!


テキストブロックのルールと注意点

インデント(字下げ)

先頭の """次の行から内容が始まります。
先頭の空白は無視される仕組みですが、字下げをそろえると読みやすくなります。

たとえば:

String example = """
        line 1
        line 2
        """;

この場合、各行の「4つのスペース」は自動的に取り除かれ、次のように解釈されます:

line 1
line 2

H3: エスケープの必要がない!

通常の文字列では、\" のようにエスケープが必要でした。

しかし、テキストブロックではエスケープせずにそのまま書けるので、わかりやすくなります。



メリットとデメリット

メリットデメリット
複数行が読みやすく書けるJava 13以降でしか使えない
エスケープ不要でシンプルコード全体のインデントに注意が必要
HTMLやSQLとの相性がとても良い一行で済む文字列にはやや過剰な書き方に

どのバージョンから使えるの?

テキストブロックはJava 13でプレビューとして登場し、Java 15から正式に使えるようになりました。

セイ・コンサルティング・グループの新人エンジニア研修のメニューへのリンク

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。