我有一个字符串。

String invalid = "backslash escaping as <>:;%+\/"."


我收到一条错误消息,告诉我添加\以转义序列。
当我尝试用Java编写此代码时,我知道反斜杠需要以\\进行转义。所以我写成:

String invalid = "backslash escaping as <>:;%+\\/\"."


现在显示为backslash escaping as <>:;%+\\/".

反斜杠没有转义。我如何只获得一个反斜线?

最佳答案

我发现您的修改没有问题。这按预期运行:

    String invalid = "backslash escaping as <>:;%+\\/\".";
    System.out.println(invalid);

    output:
    backslash escaping as <>:;%+\/".


在第一个示例中,您有一个小问题:

\/".


我认为应该是这样的:

/\".


因为用第一种方法,您要先关闭字符串。 ."部分不在字符串中。

编辑:
尝试将输出写入文件或JTextField或其他内容,看看会发生什么,您的字符串正确,并且如果将输出与我的输出进行比较,则该字符串是相同的。调试器可能有问题(很奇怪,但可能)。

关于java - 无法使用\\在Java中转义\,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14483375/

10-11 02:42