具有"""分隔符的Java 13多行文本块功能已广为人知。

但是,我经常需要没有嵌入式换行符的整个段落。

换句话说,以下代码段:

String paragraph =
    """
    aaaa bbbb cccc
    dddd eeee ffff
    gggg hhhh iiii
    """
System.out.println(paragraph);

如您所料,产生以下内容:
aaaa bbbb cccc
dddd eeee ffff
gggg hhhh iiii

...这通常非常有用。但是,就我而言,对于特别大的段落,我需要它来产生此内容:
aaaa bbbb cccc dddd eeee ffff gggg hhhh iiii

(...并稍后处理文本流。)

是否可以为三引号功能建立“no-newline”参数?

最佳答案

此功能的设计人员也意识到了这一要求(请参阅JEP368中的'New escape sequences')。因此,使用最新的JDK 14早期访问版本,您可以使用尾随\来在行尾转义新行:

public class Main {
    public static void main(String[] args) {
        String paragraph =
            """
            aaaa bbbb cccc \
            dddd eeee ffff \
            gggg hhhh iiii \
            """;
        System.out.println(paragraph);
    }
}

打印:
aaaa bbbb cccc dddd eeee ffff gggg hhhh iiii

07-28 00:02