Java のリテラル
リテラルとは?
ソースコードに記述する定数値のことを、リテラル (literal) といいます。
データ型によって使えるリテラルが決まっています。例えば整数型 (int) の数字の 1 を表すリテラルは 1 ですが、 long 型の場合は 1L という風に L を付ける必要があります。
Java の整数型のリテラル
Java の整数型のリテラルには次の種類があります。
普通の整数値は int 型として扱われます。整数に L を付けると、long 型として扱われます。
2進数の数値には 0b を付けます。 0b1111 は 10進数で 15 です。
8進数の数値には 0 を付けます。 011 は 10進数で 9 です。
16進数の数値には 0x を付けます。 0x11 は10進数で 17 です。
int i = 123;
int j = 0x11; // j = 17
int k = 0b1111; // k = 15
int l = 010; // l = 8
数値の途中で、任意の数のアンダースコア _ を使うこともできます。これによって、長い数値が読みやすくできます。
int b = 0b11_0010; // b = 50
Java の浮動小数点型のリテラル
小数点のある数値は double 型になります。 F を付けると、float 型になります。例えば、 3.14 は double 型になりますが、 3.14F は float 型です。
浮動小数点の場合も、数値の途中で任意の数のアンダースコア _ を使うこともできます。これによって、長い数値が読みやすい形で記述できます。
Java の文字型のリテラル
Java の文字型 (char 型) のリテラルは引用符 (シングルクォート) ' で囲みます。
char ch = 'A';
文字型のリテラルの区切り文字と同じシングルクォート文字は、バックスラッシュを付けて区切り文字と区別します。
char ch = '\'';
その他制御文字など、いくつかの文字でエスケープシーケンスが必要になります。詳しくは「Java の文字型のエスケープシーケンス」をみてください。
Java の文字列型のリテラル
Java の文字列型 (String 型) のリテラルは二重引用符 (ダブルクォート) " で囲みます。
String s = "Hello";
文字列リテラルの区切り文字のダブルクォートを文字列内で使うには、バックスラッシュを付けます。
String s = "\"Hello\"";
System.out.println(s); // "Hello"
その他制御文字など、いくつかの文字でエスケープシーケンスが必要になります。詳しくは「Java の文字型のエスケープシーケンス」をみてください。