在Java中,我应该在String(双引号)中转义单个引号(')吗?

时间:2013-05-21 07:08:18

标签: java string escaping character

在Java中,\'表示单引号(单引号)字符,\"表示双引号(双引号)字符。

所以,String s = "I\'m a human.";效果很好。

但是,String s = "I'm a human."也不会产生任何编译错误。

同样,char c = '\"';有效,但char c = '"';也有效。

在Java中,哪个更好用?在HTML或CSS中,style="font-family:'Arial Unicode MS';"之类的东西更常见(对于这样的标签,我认为这是使用引号的唯一方法),但在Java中,我经常看到人们使用转义字符,如"I\'m a human."

2 个答案:

答案 0 :(得分:43)

您不需要转义String中的'字符(包含在"中),并且您不必转义char中的"字符(包裹在')。

答案 1 :(得分:13)

最好的做法只是在你需要的时候逃避报价 - 如果你能逃脱而不逃避它,那就去做吧!

您尝试将"放入字符串或'放入字符时,唯一需要转义的时间是:

String quotes = "He said \"Hello, World!\"";
char quote = '\'';