Java是否有'@'字符来转义字符串引号?

时间:2010-01-07 06:11:54

标签: c# java string quotes double-quotes

我的字符串中有双引号,C#我会这样做:

string blah = @"this is my ""text";

我将如何用Java做到这一点?

3 个答案:

答案 0 :(得分:12)

没有。这种功能在Java中不可用。
来自太阳docs

当在print语句中遇到转义序列时,编译器会相应地解释它。例如,如果要在引号内放置引号,则必须在内部引号上使用转义序列\“。打印句子

She said "Hello!" to me.
你会写

System.out.println("She said \"Hello!\" to me.");

答案 1 :(得分:3)

目前没有类似的内容,但它是一个“修复已理解”的增强请求。

如果添加,此功能将允许此类字符串文字:

String qry = @"
   SELECT
     a.name, b.number
   FROM
     User a, Data b
   WHERE
     a.name = "James"
      AND
     a.id = b.id
";

有些评论主要拒绝这一点,因为它是一种语法糖,但显然对它有很高的要求,所以有一天我们可能会看到这一点。

答案 2 :(得分:0)

是*(自 2019 年 9 月起),但它使用了不同的语法。 “””(三个双引号)。

*在更新的 Java 版本中(预览版 +13,生产就绪版 +15),使用 java 文本块可以实现大部分等效。

String html = """         
            <xml>
                <ody>
                    <pan>example xml </pan>
                </ody>
            </xml>""";

https://docs.oracle.com/en/java/javase/13/text_blocks/index.html