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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 硬别 中级黑马   /  2013-10-14 21:08  /  1634 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 硬别 于 2013-10-14 21:45 编辑

买了本书,上面老是说什么三元运算符,三木运算符啥的,有啥用吗?跟if,else什么的有什么区别吗?

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

7 个回复

倒序浏览
三元运算符,又称为三目运算符,就是对三个表达式的值进行判断,对判断的流程进行改善。<表达式1>?<表达式2>:<表达式3>; "?"运算符的含义是: 先求表达式1的值, 如果为真, 则执行表达式2,并返回表达式2的结果 ; 如果表达式1的值为假, 则执行表达式3 ,并返回表达式3的结果.理解下吧,这个应该很简单

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

回复 使用道具 举报
三元运算符就是?他可以代表简单的if else
例如:bool  gender=true;//bool类型的变量gendal 只有true和false二个值
         string sex="";//定义string类型的sex,赋值为空
         sex=  gender==true?"男":"女"; //用gender给sex赋值,假设true为男,false为女 判断当gender是否为true,如果满足,则把?后面的第一个值付给sex,否则把?后面的第二个值给sex

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

回复 使用道具 举报
三元运算符嘛 就是由?和:组成的运算符  用于

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

回复 使用道具 举报
C#中有一个三元运算符“?:”,语法为:条件表达式?表达式1:表达式2;
该操作首先求出条件表达式的值(bool类型),为true时调用表达式1,为flase时调用表达式2。其逻辑为:“如果为真执行第一个,否则执行第二个。”
例如:

a=3>4?3:4;输出为4。
a=3<4?3:4;输出为3。

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

回复 使用道具 举报
楼上仁兄对其解释应该说比较全,这里补充二点。
      1、三元又称三目,即其操作数是3个,这是与操作数是2个二元(如:+),操作数是1个(如:!)一元相对应的概念。
      2、我所学的运算符中,只有唯一一个三元运算符(?:),其可以用 if 去构造等价语句。

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

回复 使用道具 举报
用于值之间的判断比较 在等号旁是一个确切的值 和if else的区别是if else里面执行的是代码块 能够引用类型之间的比较 相比之下三元运算符就比较单一 希望我的回答能够帮到你

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

回复 使用道具 举报
首先呢!先介绍一下三目运算符的语法吧,  条件表达式?表达式1:表达式2;
首先要求出条件表达式的值(bool类型),如果为true时则调用表达式1,反之调用表达式2。
说实话,这个if-else语句没有多大区别,就是书写起来比较高端而已啦,当然效率也稍微高了那么一点点
比如要比较a和b的大小,谁大就取谁
  可以这样写 C=a-b?a:b;
也可以用if-else来解决
if(a>b)
C=a;
else
C=b;(只是代码量多一点而已)
很容易理解  希望能帮到你~~

评分

参与人数 1技术分 +1 收起 理由
haxyek + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马