3 回答

TA貢獻1868條經(jīng)驗 獲得超4個贊
int a = 1;
char b = (char) a;
System.out.println(b);
會打印出ascii值為1的char(首字符,這是不可打印的)。
int a = '1';
char b = (char) a;
System.out.println(b);
將打印出具有ascii值49的字符(一個對應(yīng)于'1'的字符)
如果要轉(zhuǎn)換數(shù)字(0-9),則可以將數(shù)字加48并進行轉(zhuǎn)換,例如Character.forDigit(a, 10);。
如果要轉(zhuǎn)換intas ascii值,則可以使用Character.toChars(48)例如。

TA貢獻1852條經(jīng)驗 獲得超7個贊
似乎您正在尋找Character.forDigit方法:
final int RADIX = 10;
int i = 4;
char ch = Character.forDigit(i, RADIX);
System.out.println(ch); // Prints '4'
還有一種方法可以將字符從char轉(zhuǎn)換回int:
int i2 = Character.digit(ch, RADIX);
System.out.println(i2); // Prints '4'
請注意,通過更改,RADIX您還可以支持十六進制(基數(shù)為16)以及最大為36(或Character.MAX_RADIX稱為36)的任何基數(shù)。
添加回答
舉報