Javaでintをcharに変換する 質問する

Javaでintをcharに変換する 質問する

以下はコードスニペットです。

int a = 1;
char b = (char) a;
System.out.println(b);

しかし、得られるのは空の出力です。

int a = '1';
char b = (char) a;
System.out.println(b);

出力として 1 が返されます。

誰かこれを説明してくれませんか? また、最初のスニペットのように int を char に変換したい場合は、どうすればいいでしょうか?

ベストアンサー1

int a = 1;
char b = (char) a;
System.out.println(b);

文字を印刷しますユニコードコードポイント1 (見出し開始文字、印刷不可。次の表を参照)C0 コントロールと基本ラテン語(ASCIIと同じ)

int a = '1';
char b = (char) a;
System.out.println(b);

Unicodeコードポイント49('1'に対応するもの)の文字を出力します。

数字 (0 ~ 9) を変換する場合は、それに 48 を加算してキャストするか、次のようにしますCharacter.forDigit(a, 10);

int表示をUnicodeコードポイントに変換したい場合は、Character.toChars(48)例えば。

おすすめ記事