java 三目运算符 System.out.println(3 < 2 ? 'a' : 98);的输出结果是什么___b______;

为什么会输出b... 为什么会输出b 展开
 我来答
百毒千毒
2019-03-01 · TA获得超过4737个赞
知道大有可为答主
回答量:2500
采纳率:88%
帮助的人:647万
展开全部
因为当int与char类型进行比较的时候,比较的是他们的ASCII码;
输出的也是对应的字符,98恰好对应b;
你可以尝试使用Object来接受返回的类型,然后反编译字节码文件,打开一看就能一目了然!
你这个程序,编译通过以后,其实内部直接写的这样的:
System.out.println("b");//你写的里面的,这些表达式全都被抛弃了!
另外这种比较写法:会报黄色警告,需要压制才行,不符合规范!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式