0Pricing
Java Academy · 课时

文本块中的转义

使用新的转义序列

文本块中的转义 是 CoddyKit 上的免费 Java Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Java Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Java Academy 课程共包含 4 节课。

文本块的新转义序列

文本块支持所有常用转义序列,另外还专门新增了两种转义序列:行连接 \ 和显式空格 \s。它们可以精确控制输出。

使用反斜杠进行行连接

在行末使用 \ 会告诉 Java 不要在那里插入换行符。下一行会接到当前行后面。这样,您就能为了提高可读性,将较长的逻辑行分成多行书写。

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

行连接的作用

您可以将源代码格式化为多行,同时生成单行输出。对于较长的句子或网址,这非常有用。

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);
    }
}

转义三个连续的双引号

如果要在文本块中包含三个连续的双引号,请使用 \" 至少转义其中一个,这样它就不会被误认为结束分隔符。

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

您可以混合使用这两种新转义序列。在这里,行连接会合并多行,而 \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、\\ 仍然有效
  • 转义双引号即可嵌入 """
  • 单个 " 无需转义

常见问题解答

「文本块中的转义」课时是免费的吗?

是的 — 「文本块中的转义」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Java Academy 课程的其余内容,请升级到 CoddyKit PRO。 Java Academy 课程共包含 4 节课。

「文本块中的转义」这节课中我会学到什么?

使用新的转义序列 你通过在浏览器中直接运行的动手代码来练习 Java Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Java Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Java Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。

「文本块中的转义」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Java Academy 课中编写并运行代码吗?

能。每节 Java Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 声明文本块
  2. 缩进与去除
  3. 文本块中的转义
  4. 使用场景:JSON 与 SQL
← 返回 Java Academy