A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

下面的代码有什么不妥之处?
return x==1?true:false;
求答案,答案是 返回永远为真,不如直接return true ,不确定答案,想确定答案,
但是张老师没有那个题没有答案。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

5 个回复

倒序浏览
记不起来具体你说的是哪一段了。
用return x==1?true:false;
肯定是因为需要使x==1 然后再返回true
如果直接返回true就没有意义了
你在找找方法里面改变x值的代码。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 许庭洲 于 2012-8-8 08:08 编辑

1,return x==1?true:false;//若x等于1,则返回true,否则返回false;
2,x==1?true:false是一个表达式,该表达式与true等价;
3,return x==1?true:false;  <=>return true;
4,若原先给变量x赋初始值为1,则下面的表达式为false,例如return x==2?true:false。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
return x==1?true:false    return返回一个结果,返回什么样的结果,要看 x==1?true:false 这个三元表达式的结果是什么,
x==1?true:false它的意义是x==1是真是假,如果为真则其结果为true,如果为假,返回false
如果上面的表达式写成x==1?1:0它的意思就是x==1成立吗?如果成立则这个三元表达式的结果是1,不成立是0

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
嗯。OK了
回复 使用道具 举报
return x==1?true:false;
这是三元表达式啊, 只有当x==1成立时才返回真,否则返回假。
不能省略写成 return true;  
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马