java转型的问题?

char ch='0';

System.out.println((int)ch);

今天做一道算法题突然发现,上面代码输出的结果是48,看别人给的答案发现应该这样写:


char ch='0';

System.out.println((int)(ch-'0');

为什么会出现这种状况,求解


幕布斯7119047
浏览 379回答 1
1回答

富国沪深

char转int是按ascii码转换的。'0'的ascii码是96,'0'-'0'=0。你也可以用Integer.parseInt('0')来转换,得到的是0。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java