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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 Kaitong 于 2014-4-2 11:14 编辑

今天学到三元表达式,条件?表达式1:表达式2
三元表达式是不是就这一种情况?会不会和二元运算符(+-*/)一样有好几种形式呢?是不是所有数据类型都适用?求帮忙说下

评分

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

查看全部评分

6 个回复

正序浏览
三元表达式,条件的结果只能够是bool类型,无论什么数据类型结果都必须要能显示或者能够隐示转换成bool类型,至于后面两个表达式随便写,不过只能够是一条语句(多条就用括号来括);
回复 使用道具 举报
threederek 发表于 2014-4-1 22:40
就是个条件表达式吧
用法的话具体情况分很多
你就按照对 if else语句来理解吧 ...

麻烦帮我看看这个问题
http://bbs.itheima.com/thread-112655-1-1.html
回复 使用道具 举报
额,我知道那个三元表达式是什么意思,我想问的是三元表达式有几种形式,是不是所有的数据类型都能用三元表达式?
回复 使用道具 举报
  1. class Program
  2.     {
  3.         //要求用户输入两个数a、b,如果a能被b整除或者a加b大于100,则输出a的值,否则输出b的值。
  4.         static void Main(string[] args)
  5.         {
  6.             try
  7.             {
  8.                 Console.WriteLine("请输入两个数;");
  9.                 int a = Convert.ToInt32(Console.ReadLine());
  10.                 int b = Convert.ToInt32(Console.ReadLine());
  11.                 int max = a > b ? a : b;//三元运算符,具体见下面的详解
  12.                 Console.WriteLine("较大的数是{0}",max);
  13.             }
  14.             catch
  15.             {
  16.                 Console.WriteLine("非法字符,程序结束");
  17.             }
  18.             Console.ReadKey();
  19.         }
  20.         /* a > b ? a : b 就相当于
  21.          *
  22.          * if(a>b)
  23.          * {
  24.          *   max=a;
  25.          * }
  26.          * else
  27.          * {
  28.          *   max=b;
  29.          * }
  30.          */
  31.     }
复制代码

评分

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

查看全部评分

回复 使用道具 举报
本帖最后由 redlong 于 2014-4-1 23:17 编辑

三元表达式其实就是简单的if else 形式。比如说你在修改一条数据的时可以这样写
if(count>0)
{
   return "修改成功";
}
else
{
  return "修改失败";
}
如果用三元表达式就简单多了
return count>0?"修改成功":"修改失败";

回复 使用道具 举报
就是个条件表达式吧
用法的话具体情况分很多
你就按照对 if else语句来理解吧
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马