黑马程序员技术交流社区

标题: 三元表达式 [打印本页]

作者: 李海龙    时间: 2011-12-10 09:57
标题: 三元表达式
表达1?表2:表3  什么意思  可以替换 if else  如何更好的利用三元表达式 原理是什么 如何更好的学会 求高手赐教  
作者: 谭显锋    时间: 2011-12-10 10:53
如果表达式1为true,则整个表达式以表2为结果,若为false,则以表3为结果,这样比写if else简化了不少代码。
作者: arbtaystpw    时间: 2011-12-10 13:33
最简单的例子:
int i=3;
i>0? true:false;

其实可以把三元运算符换成if...else语句
可以把上面的例子改成:
    int i=3;
   if(i>0)
  return true;
else
return false;

作者: 黑马——兰雷明    时间: 2011-12-12 00:02
表达式1为布尔类型的表达式,如果成立输出表达式2的值,不成立则输出表达式3的值;
当一个表达式的值只有两种情况时(如:性别,不是男,就是女了),就可以使用三元表达式,当然亦可以if else结构;
如果这两种都可以使用时,当然选用三元表达式了。。。
{:soso_e113:}
作者: 刘立娜    时间: 2011-12-12 10:44
三元运算符比较适合简单的赋值语句,不适合于根据比较结果执行大量代码的情况。此时应该使用if语句。
作者: 张大福    时间: 2011-12-13 20:45
1.三元表达式代表一个数据,所以可以赋给一个变量,如果不是一个数据就不叫表达式了。if-else代表一个执行过程
2.三元表达式可以全部转换成if-else,if-else不能全部转换成三元表达式。
作者: 王富恒    时间: 2011-12-13 21:55
表达式1?表达式2:表达式3(三元)
a>b?a:b
作者: 陆亚    时间: 2011-12-14 10:35
可以使代码精炼,
作者: liuyinggzu    时间: 2011-12-14 10:57
三元表达式中的表达式如果过长会使代码可读性变差,而且只是看上去精简,实际性能影响不大,所以尽量使用if-else语句,使代码规范易懂,以便于修改、维护。
作者: 董伟    时间: 2011-12-14 11:15
condition ? expression1 : expression2
如果condition条件为true,则执行expression1,否则执行expression2
转换为if判断:
if(condition)

    expression1;

else

    expression2;

作者: 刘波    时间: 2011-12-14 15:31
三元表达式 和 if类似
只不过 if可以判断后运行语句
三元表达式只能判断后赋值

三元表达式的符号是 ?(问号)和:(冒号)

比如if的式子
string s ;
if(1>1)
{
   s="对";
}
else
{
   s="错";
}

可以写成这样的三元表达式

string s = (1 > 1)? "对":"错";

如果表达式 1>1 成立 则s = 对 否则 s = 错

在上面的式子中 ()括号是可有可无的,带上看的清楚一些

希望能够帮助到你





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