主な内容の要点
1. 文字リテラルとは
- 1文字だけを表す値のこと
'a'や'あ'のように シングルクォーテーション' 'で囲んで書く- 2文字以上(例:
'ab')や空文字('')はエラーになる - 文字リテラルは char型 の変数に代入できる
System.out.println('a'); // a と表示
char c = '花'; // 変数cに「花」を代入
Java2. 文字コードとは
- コンピュータは文字をそのまま扱えないので、数値に対応付けて管理している
- この数値が「文字コード」
- 文字コードの規格には ASCII, Shift_JIS, Unicode などがある
- Javaは Unicode (UTF-16) を採用している
例:
'a'→ コードは0x0061'あ'→ コードは0x3042
3. 文字コードを使った表現
- 文字リテラルの代わりに、文字コードを直接指定しても同じ文字を表せる
char c1 = 'a';
char c2 = 0x0061; // 16進数で指定
char c3 = 97; // 10進数でもOK
Java- ただし
System.out.println(0x0061);のように直接出力すると、文字ではなく数値(97)が表示される
4. エスケープシーケンスでの表現
'\uXXXX'の形で、Unicodeのコードを16進数で指定できる
System.out.println('\u0061'); // a と表示
Java初心者へのポイント
- 文字リテラルは必ず
' 'で囲む(ダブルクォーテーションは文字列用) - 1文字だけであることに注意
- Javaは Unicode対応なので、日本語も扱える
- 文字コードを知っておくと、文字と数値の関係が理解できて便利
👉 まとめると、「Javaでは文字は数値(文字コード)と対応していて、'a' と書いても 0x0061 と書いても同じ意味になる」ということです。
初心者向け “覚えておくと良いこと”
- 文字を1つだけ扱いたいなら シングルクォーテーション(’) を使って書く。
- 文字が複数あるなら、それは「文字列リテラル(String型)」という別の扱いになる(このページでは扱ってませんが、今後覚えると良いです)。
- 文字コードというのは “文字を数値で表す”仕組み。普段はあまり意識しなくても動きますが、特殊な文字を扱うときやエンコーディングを考えるときに出てきます。
'\uXXXX'の形式は “直接文字コードを使って文字を書く”ときに使える技術。特に “画面に出す” ような場面で数値だけ出てしまわないよう注意。- 日本語や海外の文字、特殊な記号などを扱う際は、文字コードやエンコーディング(文字の数値化のルール)を意識すると後で困りにくい。

