java,char问题?

来源:百度知道 编辑:UC知道 时间:2024/05/29 01:28:04
char c = ' 1 ';输出 ,System.out.println(c);结果就是1, 但输出System.out.println(c+0);结果却变成了49。为什么?

c+0:0默认是int型的数据,在此代数式中,由于出现int型数据0和双目运算符‘+’,使得char数据c强制转换为int型(即:它的ASCAL编码),字符‘1’的ASCAL编码是49,故得。