黑马程序员技术交流社区

标题: 三元运算符转换问题~~ [打印本页]

作者: Makise_Kurisu    时间: 2015-12-4 00:02
标题: 三元运算符转换问题~~
int sum=0;
for(int i=1;i<=10;i++){
if(i%2==0){
  sum+=i;
}
}
可否更换为三元运算符?
int sum=0;
for(int i=1;i<=10;i++){
i%2==0?sum+=i:cotinue;
}


作者: bulala    时间: 2015-12-4 16:03
不可以。三元运算符格式为: (条件表达式)?表达式1:表达式2;
可以改为:(i%2==0)?sum+i:sum+0;
作者: Yuto吕    时间: 2015-12-4 18:03
i%2==0?sum+=i:cotinue;
三元换算是要求表达式的,cotinue算执行语句,所以不行
可以这么写
i%2==0?sum=sum+1:sum=sum+0;
作者: Little_jie    时间: 2015-12-4 20:17
楼上说的很清楚了,三元运算符,:两边只能是表达式
作者: zqiang    时间: 2015-12-4 21:13
楼上都是大神,都是正解




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2