【Java】charは文字列ではなく文字!サンプルコードを使って解説!

char型は文字型とも呼ばれ、文字を格納することができる変数の型です。
文字を格納する点ではString型と似ていますが、複数の文字を格納できるString型と比べて、
char型は1文字だけを変数として定義することができます。

その為、1文字しか定義しない場合はStringではなくcharを使うことをおすすめします。

今回はchar型の使い方と
⚫︎ 変数として扱う場合
⚫︎ 配列として扱う場合
⚫︎ 文字同士を比較する場合
について解説していきます。

char型とは

char型とは文字の格納に使用されるデータ型となります。

文字というとString型と似ていますが、複数の文字を格納できるString型と比べて、char型は1文字だけを変数として定義する型になります。

また、charデータ型は、Unicode文字セットに従うため、2バイト(16ビット)を使用し、一つ一つの文字を0~65535の番号に割り当てています。

charの書き方

charの構文は下記となります。

char型の変数に文字を代入する場合は ‘a’ や ‘男’ などのようにシングルクオーテーションで囲んだり文字コードを使って ‘\uxxxx’ のように代入します。

charは、aからZまでの任意の値、およびすべての数値であると考えられます。
例えば、次のコードを見てみましょう。

char変数に一文字、文字コードを使ったUnicode表現、数字の文字のそれぞれを設定したchar変数があります。

出力結果

A
E
M

出力は、0x0045や77ではなく、16進数、Unicode表現になります。
あくまでchar型は文字を格納するのが目的のデータ型ですので、
整数を格納する目的で使用するのは薦めません。

char型を使ったサンプルコード

char型を使ったサンプルコードを紹介していきます。
今回は変数と配列の2ケースで解説していきます。

変数として扱う場合

出力結果

A
B
C

配列として扱う場合

出力結果

[A, B]
[A, B]
[A, B]

どちらのケースでも1文字、16進数、Unicode表現で入力すると、
それに対する文字が表示されます。

文字同士を比較する場合

文字同士を比較する場合は、==(比較演算子)を使用します。

出力結果

char1とchar2は同じではありません。

今日のポイント

charで文字を格納する

⚫︎ charデータ型は単一の16ビットUnicode文字である

⚫︎ 最小値は ‘\ u0000’(または0)である(マイナスは存在しない)

⚫︎ 最大値は ‘\ uffff’(または65,535を含む)である

⚫︎ charデータ型は、任意の文字を格納するために使用される

⚫︎ ==(比較演算子)で文字同士を比較することができる

Writer
壷井

壷井

株式会社flyhawkの壷井です。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。

最新の案件情報

フリーランスエンジニアの案件探し