黑马程序员技术交流社区
标题:
关于三元运算符
[打印本页]
作者:
Hison_lian
时间:
2015-5-11 22:09
标题:
关于三元运算符
请问在下面的语句中 (true)?a++ : b++; a++会自增1,那么b++那?
作者:
liya7907
时间:
2015-5-11 22:21
a++是先运算,再自增,b++不参与该次运算。
作者:
liya7907
时间:
2015-5-11 22:23
int a = 3;
int b = 4;
int c = (true)?a++:b++;//c的结果是3,是a自增之前的结果.
作者:
wangyu
时间:
2015-5-11 22:25
后面那俩只能执行一个
作者:
赵旗
时间:
2015-5-11 22:40
不会增加 true 只会执行第一条语句
作者:
Hison_lian
时间:
2015-5-11 22:44
好的,谢谢
作者:
as12510
时间:
2015-5-11 23:16
三元 只能输出一个 a++或者b++ 所以 ture 的话 就运行a++ b不会运行的
作者:
liujin
时间:
2015-5-11 23:32
三元运算符:如果判断条件满足则执行a++,如果不满足则执行b++
作者:
我干阿衰
时间:
2015-5-12 01:45
如 (flag)? a++ : b++; flag为真则执行b++, 假 则执行a++.
作者:
黑马小符
时间:
2015-5-12 06:56
哥们你三元运算符的格式都写错了,正确的格式是,条件表达式?条件表达式1:条件表达式2;
作者:
YQliang
时间:
2015-5-12 08:20
true的时候是执行左边,false的时候是执行右边,没有被执行的就是跟原来一样
作者:
空--格
时间:
2015-5-12 21:40
一楼正解~~
作者:
shao122791159
时间:
2015-5-12 21:43
b++这一句语句并不会执行,所以b的值没有发生改变
作者:
rick1991chen
时间:
2015-5-12 21:43
问号左边为true的话就运行冒号左边,false就运行冒号右边
作者:
V_nan
时间:
2015-5-12 21:52
ture执行表达式1,所以后面的不执行,就不自增
作者:
二大爷
时间:
2015-5-12 22:10
表达式为 true 就执行a++ ,表达式为 float 就执行b++
作者:
Tony丶Just
时间:
2015-5-12 22:11
b++不参与该次运算。
作者:
冷月霜飞
时间:
2015-5-12 22:48
三元运算符也是个运算符,必然会有个结果,所以三元运算符中的两个值必然只能有一个执行,具体哪个执行,是要取决于条件表达式的
作者:
youngzk
时间:
2015-5-12 23:13
可以自己做个测试
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2