0Pricing
Java Academy · レッスン

テキストブロックの宣言

三重引用符で複数行文字列を書きます

「テキストブロックの宣言」はCoddyKit上の無料Java Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはJava Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Java Academyコースには全4レッスンが含まれています。

複数行テキストのつらさ

Java 15 より前は、複数行のテキストを書くために、\n と + で文字列を連結していました。読みにくく、間違いも起こりやすい方法でした。これを解決するのがテキストブロックです。

トリプルクォート

テキストブロックは、3 つの二重引用符 """ と改行で始まり、その後に内容を記述し、最後に """ で閉じます。2 つの区切りの間にあるすべての内容が文字列になります。

public class Main {
    public static void main(String[] args) {
        String message = """
            Hello
            World
            """;
        System.out.println(message);
    }
}

開始行のルール

内容は、開始側の """ の次の行から始める必要があります。開始区切り文字の直後にテキストを記述することはできません。この改行は構文上必須です。

public class Main {
    public static void main(String[] args) {
        String poem = """
            Roses are red
            Violets are blue
            """;
        System.out.println(poem);
    }
}

改行は自動的に入る

テキストブロック内の各改行は、結果の文字列では \n になります。行末を表すエスケープシーケンスを自分で記述する必要はありません。

public class Main {
    public static void main(String[] args) {
        String list = """
            Apples
            Bananas
            Cherries
            """;
        System.out.print(list);
    }
}

連結は不要

従来の方法("a\n" + "b\n")とテキストブロックを比較してみてください。テキストブロックは出力と同じ形で読めるため、間違いに気付きやすくなります。

public class Main {
    public static void main(String[] args) {
        String html = """
            <html>
              <body>Hi</body>
            </html>
            """;
        System.out.println(html);
    }
}

エスケープなしで引用符を使う

テキストブロック内では、単一の二重引用符 " をエスケープする必要がありません。JSON のように引用符を含む内容に最適です。

public class Main {
    public static void main(String[] args) {
        String json = """
            {"name": "Alice", "age": 30}
            """;
        System.out.println(json);
    }
}

テキストブロックも String

結果は通常の String です。ほかの String と同じように、任意のメソッドを呼び出したり、連結したり、別のメソッドに渡したりできます。

public class Main {
    public static void main(String[] args) {
        String text = """
            one
            two
            """;
        System.out.println("Length: " + text.length());
        System.out.println("Upper: " + text.toUpperCase());
    }
}

テキストブロックを連結する

通常の文字列リテラルと同じように、+ を使ってテキストブロックをほかの文字列と連結できます。

public class Main {
    public static void main(String[] args) {
        String name = "Bob";
        String greeting = """
            Dear customer,
            """ + "Welcome " + name;
        System.out.println(greeting);
    }
}

空行は保持される

ブロック内の空行は、文字列内でも空行として保持されます。これにより、間隔を空けた出力を自然な形で整形できます。

public class Main {
    public static void main(String[] args) {
        String spaced = """
            Title

            Body text
            """;
        System.out.print(spaced);
    }
}

読みやすいコードスニペット

コードのような内容を埋め込む場合、テキストブロックが特に役立ちます。ここでは、小さな疑似設定ファイルを完全に読みやすい形で保持しています。

public class Main {
    public static void main(String[] args) {
        String config = """
            host = localhost
            port = 8080
            debug = true
            """;
        System.out.print(config);
    }
}

行数を数える

改行が実際の文字として含まれるため、テキストブロックを \n で分割して各行を処理できます。

public class Main {
    public static void main(String[] args) {
        String data = """
            red
            green
            blue
            """;
        String[] lines = data.split("\n");
        System.out.println("Lines: " + lines.length);
    }
}

確認問題

テキストブロックの内容は、どこから始める必要がありますか。

まとめ

テキストブロックの宣言方法を学びました。

  • """ で開始し、""" で閉じる
  • 内容は次の行から始める必要がある
  • 改行は自動的に \n になる
  • 二重引用符はエスケープ不要
  • 結果は通常の String になる

よくある質問

「テキストブロックの宣言」レッスンは無料ですか?

はい。「テキストブロックの宣言」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Java Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Java Academyコースには全4レッスンが含まれています。

「テキストブロックの宣言」で何を学びますか?

三重引用符で複数行文字列を書きます ブラウザで直接実行するハンズオンコードでJava Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Java Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのJava Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。

「テキストブロックの宣言」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このJava Academyレッスンでコードを書いて実行できますか?

はい。すべてのJava Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. テキストブロックの宣言
  2. インデントと除去
  3. テキストブロック内のエスケープ
  4. ユースケース:JSONとSQL
← Java Academyに戻る