标题: 三元运算符求三个数最大最小值----一行代码 [打印本页] 作者: 奉建兵 时间: 2016-5-1 09:35 标题: 三元运算符求三个数最大最小值----一行代码 int a = 3;
int b = 2;
int c = 8;
//求最大值
int max = (a > b) ? (a > c ? a : c) : (b > c ? b : c);
作者: jiang0409 时间: 2016-5-1 09:46
。。。半天没看懂,求解释 作者: lxd323 时间: 2016-5-1 10:25
感觉这样写可读性好差啊作者: 土豆你个马铃薯 时间: 2016-5-1 11:14
可读性不差,先比较第一个小括号是true,就执行第二个小括号里的内容;(如果是false就执行第三小括号);
括号里还有比较,true就执行a,false就执行c;a不大于c是false所有就走c作者: 老司机喔 时间: 2016-5-1 18:22
看第一遍的时候,硬是没看懂作者: 单曲循环1992 时间: 2016-5-1 22:20
怎么说呢,如果思路足够清晰,这么写还是挺好的,不过要是思路不够清晰,还是不要这么写!!!这毕竟是比较简单的例子....作者: rabbitguy 时间: 2016-5-1 23:09
老师说了不推荐三元嵌套使用,可读性差.
其实倒没有太难吧
int max = (a > b) ? (a > c ? a : c) : (b > c ? b : c);
三元表达式返回结果是一个值,
a>b得出来的分支 分别是 (a > c ? a : c) 和 (b > c ? b : c),仅此而已作者: 执着为梦 时间: 2016-5-1 23:18
可以啊.........作者: 随风而逸 时间: 2016-5-1 23:22
还行,能读懂作者: WDzyll 时间: 2016-5-2 00:09
从左向右读,是true就输出a,不是就输出名义上的b作者: 18735346124 时间: 2016-5-2 00:56
用处不是太大,真正开发中不会只有几个数来进行比较,不过可以锻炼逻辑思维作者: 320215787 时间: 2016-5-2 00:57
得看两遍 才懂作者: lvaenet1 时间: 2016-5-2 17:13
没看懂是个什么情况。。。。作者: 为何帅 时间: 2016-5-2 18:02
还好吧,我想到加了一个变量,写的时候感觉楼主的写的很简洁作者: anziyi 时间: 2016-5-2 18:11
可以啊,小伙子,不过可读性差怎么解释???作者: 微米 时间: 2016-5-2 18:58
有点计算机基础的 基本上都可以看懂吧 一步一步来 其实就是两个步骤比较作者: 某某帅 时间: 2016-8-29 23:37
很不错哦,6666666666666作者: DaoDao2 时间: 2016-8-29 23:47
三元运算符记了好久没记住作者: jojob 时间: 2021-7-26 23:10
花里胡桥的,看不懂