web-dev-qa-db-ja.com

Javaでは、文字列内の単一引用符( ')をエスケープする必要があります(二重引用符)?

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."

29
Naetmul

Stringの_'_文字をエスケープする必要はありません(_"_にラップされています)。また、charの_"_文字をエスケープする必要はありません(_'_ SOMECODE)__)。

43
Cory Kendall

必要な場合にのみ引用符をエスケープすることをお勧めします-エスケープせずに逃げることができる場合は、引用符をエスケープしてください!

エスケープする必要があるのは、"文字列内、または'文字内:

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