JAVA基础问题!

来源:百度知道 编辑:UC知道 时间:2024/05/06 12:36:04
class Devil {
public static void main(String[] args) {
char c = 'a';
double result = c;
System.out.println("result =" + result);
}运行结果是result =97.0是为什么?
帮忙解释清楚!
JAVA的8种变量类型有优先级吗?

char c = 'a'//这个时候把a这个字符赋值给字符型的变量c
double result = c; //定义一个 DOUBLE型的变量 result然后用
C去赋值给他
由于C是一个字符变量所以
把C转换成ASCII码
赋值给result
而'a'的ASCII码是97,
而result为双精度变量
所以此时result为97.0
System.out.println("result =" + result);//输出97

你在将变量c赋给result时,result得到的是c的ASCII码,而'a'的ASCII码是97,又因为result是double型变量,因此在输出时会显示出97.0,带浮点。

你想输出什么?