本帖最后由 何剑钟 于 2015-3-2 12:09 编辑
今天上完三元运算符,上百度搜索了相关信息,发现了一个有趣的问题,代码如下
int i = 3;
char c = 'X';
double d = 9.0;
System.out.println((true)?x:3);//输出为X
System.out.println((true)?x:i);//输出88
System.out.println((true)?x:3.0);//输出88.0
System.out.println((true)?x:d);//输出88.0
后来我试了几个类型只有三元运算符中表达式3为整数常量时,x作为char类型为什么不会提升数据类型直接输出字符X。我的问题是为什么只有整数常量char不会提升数据类型??老师不是说JAVA默认数据类型是int马?请教高手:'(
|
|