字符串文字\\
反斜杠是什么?它有什么作用?我已经考虑过了,但我不明白。我也在wikipedia上阅读了它。当我尝试打印以下内容时:
System.out.println("Mango \\ Nightangle");
输出为:Mango \ Nightangle
这个字符串文字有什么意义?
答案 0 :(得分:23)
\
用于许多编程语言中的转义序列,包括Java。
如果你想
\n
或\r
,\t
\
或"
,您必须使用另一个\
来转义\\
和\"
答案 1 :(得分:7)
想象一下,您正在设计一种编程语言。您决定将字符串括在引号中(“Apple”)。然后你遇到了第一个障碍:如何表示引号,因为你已经使用过它们了?刚刚超出惯例,您决定使用\"
来表示引号。那你有第二个问题:如何表示\
?同样,在惯例之外,您决定使用\\
代替。值得庆幸的是,这个过程结束了,这就足够了。您还可以使用所谓的转义序列来表示其他字符,例如回车符(\n
)。
答案 2 :(得分:3)
它用于转义特殊字符并按原样打印它们。 例如。要打印用于包含字符串的双引号,您需要使用反斜杠字符对其进行转义。
e.g。
System.out.println("printing \"this\" in quotes");
输出
printing "this" in quotes
答案 3 :(得分:3)
\
用于编程语言中的转义序列
\n
打印换行符
\\
打印反斜杠
\"
打印“
\t
打印制表符
\b
将光标向后移动
答案 4 :(得分:0)
它上面的\
用于在输入时转义特殊字符,例如\n
(新行),\t
(列表),\"
(引号) System.out.println()
语句中的这些特定值。
因此,如果你想打印一个反斜杠\
,你就不能拥有它,因为编译器会期望一个特殊的字符(比如上面那个)。因此,要打印反斜杠,您需要将其转义,因为它本身也是这些特殊字符之一,因此,\\
会产生\
。
答案 5 :(得分:-2)
如果双反斜杠看起来很奇怪,C#也允许verbatim string literals不需要转义。
Console.WriteLine(@"Mango \ Nightangle");
难道你不希望Java有这样的东西; - )