回答編集履歴

1

エスケープじゃなくて・・・

2017/08/04 11:23

投稿

momon-ga
momon-ga

スコア4820

test CHANGED
@@ -2,7 +2,21 @@
2
2
 
3
3
 
4
4
 
5
+ > 数字をエスケープすると8進数扱いされ、10進数に直され、その10進数に対応したアスキーコードの文字が出てくるわけですね・・・・
6
+
7
+
8
+
5
9
  数字をエスケープしてるわけではなく、Javaの[文字リテラル](https://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.10.4)のことです。
10
+
11
+ 表記方法の詳しいやつは、[こちら](https://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.10.6)。
12
+
13
+
14
+
15
+ エスケープすると8進数字になるのでなく、8進数字に\をつけると、文字リテラルとして扱われます。
16
+
17
+ なので、`\9`を指定すると、8進に変換されるなら011になりそうですが実際は、コンパイルエラーです。
18
+
19
+
6
20
 
7
21
  以下は、すべて@マークを表示する例です。
8
22