0Pricing
Java Academy · レッスン

テキストブロック内のエスケープ

新しいエスケープシーケンスを使用します

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

テキストブロック用の新しいエスケープ

テキストブロックでは通常のエスケープに加えて、テキストブロック専用に設計された2つの新しいエスケープ、行継続の\と明示的なスペースの\sを使用できます。これらにより、出力を正確に制御できます。

バックスラッシュによる行継続

行末に\を置くと、Javaはそこに改行を挿入しないようになります。次の行が現在の行に連結されます。これにより、長い論理行を読みやすさのために折り返して記述できます。

public class Main {
    public static void main(String[] args) {
        String text = """
            This is one \
            single long line.
            """;
        System.out.print(text);
    }
}

行継続が役立つ理由

ソースコードを複数の物理行に分けて整形しながら、出力は1行にできます。長い文章やURLに便利です。

public class Main {
    public static void main(String[] args) {
        String url = """
            https://example.com/\
            path/to/\
            resource
            """;
        System.out.print(url);
    }
}

\sスペースエスケープ

通常、末尾のスペースは取り除かれます。\sエスケープを使うと、空白の除去後も残るリテラルのスペースを挿入でき、意味のある行末の空白を保持できます。

public class Main {
    public static void main(String[] args) {
        String text = """
            red  \s
            green\s
            """;
        for (String line : text.split("\n")) {
            System.out.println("|" + line + "|");
        }
    }
}

列の配置を保持する

\sは、配置のために行末のスペースが重要になる固定幅の表で便利です。

public class Main {
    public static void main(String[] args) {
        String table = """
            NAME\s\s\sAGE
            Alice\s\s30
            """;
        System.out.print(table);
    }
}

標準のエスケープも引き続き使用できる

タブを表す\tや改行を表す\nなど、従来のエスケープもテキストブロック内で使用できます。

public class Main {
    public static void main(String[] args) {
        String text = """
            Col1\tCol2
            A\tB
            """;
        System.out.print(text);
    }
}

三重引用符をエスケープする

テキストブロック内に連続する3つの二重引用符を含めるには、少なくとも1つを\"でエスケープし、終端デリミタと誤認されないようにします。

public class Main {
    public static void main(String[] args) {
        String text = """
            He said \"\"\" loudly.
            """;
        System.out.print(text);
    }
}

リテラルのバックスラッシュ

出力に実際のバックスラッシュを含めるには、通常の文字列と同じように\\と記述します。Windowsのパスや正規表現パターンで重要になります。

public class Main {
    public static void main(String[] args) {
        String path = """
            C:\\Users\\Alice
            """;
        System.out.print(path);
    }
}

行継続と\sを組み合わせる

2つの新しいエスケープは組み合わせて使用できます。ここでは行継続によって行を連結し、\sによって連結位置にスペースを確実に入れています。

public class Main {
    public static void main(String[] args) {
        String sentence = """
            Hello\s\
            World
            """;
        System.out.print(sentence);
    }
}

意図しない改行を防ぐ

行継続を使わない場合、ソースコード内のすべての改行が改行文字になります。行末に\を追加するとその改行がなくなり、改行位置を完全に制御できます。

public class Main {
    public static void main(String[] args) {
        String joined = """
            part1\
            part2\
            part3
            """;
        System.out.println(joined);
    }
}

単独の二重引用符はエスケープ不要

テキストブロック内では、単独の二重引用符"はそのまま使用できます。終端の"""を形成する可能性がある並びだけに注意が必要です。

public class Main {
    public static void main(String[] args) {
        String quote = """
            She said "hi" to me.
            """;
        System.out.print(quote);
    }
}

クイックチェック

テキストブロックの行末に単独のバックスラッシュ\を置くと、どうなりますか?

まとめ

テキストブロックのエスケープについて学びました。

  • 行末の\ = 行継続(改行なし)
  • \s = 行末の空白の除去後も残るスペース
  • 標準の\t、\n、\\も引き続き使用できます
  • """を埋め込むには引用符をエスケープします
  • 単独の"はエスケープ不要です

よくある質問

「テキストブロック内のエスケープ」レッスンは無料ですか?

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

「テキストブロック内のエスケープ」で何を学びますか?

新しいエスケープシーケンスを使用します ブラウザで直接実行するハンズオンコードでJava Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

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

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

「テキストブロック内のエスケープ」レッスンにはどのくらい時間がかかりますか?

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

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

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

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

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