文字列リテラルの\\ バックスラッシュとは何ですか?それは何をするためのものか?考えたことはありますが、わかりません。ウィキペディアでも読んでいます。以下を印刷しようとすると:
System.out.println("Mango \\ Nightangle");
出力は次のとおりです。Mango \ Nightangle
この文字列リテラルの意味は何ですか?
文字列リテラルの\\ バックスラッシュとは何ですか?それは何をするためのものか?考えたことはありますが、わかりません。ウィキペディアでも読んでいます。以下を印刷しようとすると:
System.out.println("Mango \\ Nightangle");
出力は次のとおりです。Mango \ Nightangle
この文字列リテラルの意味は何ですか?
\Javaを含む多くのプログラミング言語でエスケープシーケンスとして使用されます。
あなたがしたい場合は
\nまたは\rを使用します。\t \同様に、文字列リテラルで特別なまたはを印刷する"には、それを別の文字列でエスケープする必要があります\。\\\"プログラミング言語を設計していると想像してください。文字列を引用符で囲むことにします(「Apple」)。次に、最初の問題にぶつかります。引用符はすでに使用しているので、どのように表現するのでしょうか。慣例に反して、\"引用符を表すために使用することにしました。次に、2番目の問題があります:どのように表現するの\ですか?繰り返しますが、慣例に反して、\\代わりに使用することにします。ありがたいことに、プロセスはそこで終了し、これで十分です。エスケープシーケンスと呼ばれるものを使用して、キャリッジリターン(\n)などの他の文字を表すこともできます。
特殊文字をエスケープしてそのまま印刷するために使用します。たとえば、文字列を囲むために使用される二重引用符を印刷するには、円記号を使用してエスケープする必要があります。
例えば
System.out.println("printing \"this\" in quotes");
出力
printing "this" in quotes
\プログラミング言語のエスケープシーケンスに使用されます。
\n改行
\\を印刷しますバックスラッシュ
\"を印刷します印刷します"
\tタブキーを印刷
\bしますカーソルを1つ後ろに移動します
それ自体は、ステートメントにこれらの特定の値を入力するときに、(改行)、(タブ)、 (引用符)\などの特殊文字をエスケープするために使用されます。\n\t\"System.out.println()
したがって、バックスラッシュを印刷する場合\、コンパイラは特殊文字(上記の文字など)を予期するため、バックスラッシュを単独で印刷することはできません。したがって、バックスラッシュを印刷するには、バックスラッシュをエスケープする必要があります。これは、バックスラッシュ自体もこれらの特殊文字の1つであるため、\\を生成し\ます。
ダブルバックスラッシュが奇妙に見える場合、C#では、エスケープが不要な逐語的な文字列リテラルも許可されます。
Console.WriteLine(@"Mango \ Nightangle");
Javaにこのようなものがあればいいのにと思いませんか;-)