asp.net C#中条件(三元)运算符 (?:)介绍

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

语法

test ? expression1 : expression2

test
任何 Boolean 表达式。

expression1
test 为 true 时返回的表达式。可能是逗点表达式。

expression2
test 为 false 时返回的表达式。可能是逗点表达式。

实例

 代码如下 复制代码

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

 

实例

 代码如下 复制代码

int lenth = 10;

string s ;

s = (lenth>16? "jihua.cnblogs.com" : "计划");

Console.WriteLine(s);

其中condition是要计算的Boolean型表达式,true_value是condition为true时返回的值,false_value是condition为false时返回的值。jihua.cnblogs.com

在此例中,如果晚于下午 6 时,则创建一个包含 "Good evening." 的字符串。使用 if...else 语句的等效代码如下:

 代码如下 复制代码

var now = new Date();
var greeting = "Good";
if (now.getHours() > 17)
   greeting += " evening.";
else
   greeting += " day.";

恰当地使用三元运算符,可以使程序非常简洁。

时间: 2024-10-07 04:26:38

asp.net C#中条件(三元)运算符 (?:)介绍的相关文章

php中的三元运算符详解

php教程中的三元运算符详解 三元运算符的功能与"if....else"流程语句一致,它在一行中书写,代码精练.执行效率高.在PHP程序中恰当地使用三元运算符能够让脚本更为简洁.高效.代码的语法如下: (expr1)?(expr2):(expr3);   解释:如果条件"expr1"成立,则执行语句"expr2",否则执行"expr3". 实现同样的功能,若使用条件流程语句,就需要书写多行代码:  if(expr1){ exp

三元运算符-条件(三元)运算符效率问题

条件(三元)运算符 (?:) 条件运算符?: 接受三个操作数,是C# 中唯一的三元运算符. 视情况返回以下两个表达式之一. test ? expression1 : expression2 test 为 true 时返回的表达式expression1 .可能是逗点表达式. test 为 false 时返回的表达式expression2 .可能是逗点表达式. ?: 运算符可以用作 if...else 语句的快捷方式. 条件运算符(三元运算符)效率问题 先来看这段代码: $name = GET('n

php中的三元运算符使用说明

今天一个网友在群里发了个题目不难,但是可能会错 复制代码 代码如下: echo $a == 1 ? 'one' : $a == 2 ? 'two' : $a == 3 ? 'three' : $a == 4 ? 'foura' : 'other'; echo "\n"; 输出结果是: <BR> 结果是:four 一开始想不明白,按照我的理解,应该是这样的逻辑: echo ($a == 1 ? 'one' : ( $a == 2 ? 'two' : ( $a == 3 ? '

php中的三元运算符使用说明_php技巧

今天一个网友在群里发了个题目不难,但是可能会错 复制代码 代码如下: echo $a == 1 ? 'one' : $a == 2 ? 'two' : $a == 3 ? 'three' : $a == 4 ? 'foura' : 'other'; echo "\n"; 输出结果是: <BR> 结果是:four 一开始想不明白,按照我的理解,应该是这样的逻辑: echo ($a == 1 ? 'one' : ( $a == 2 ? 'two' : ( $a == 3 ? '

ASP.NET MVC3 中的UrlRewrite用法介绍

ASP.NET MVC3中自带的Url重写工具,今天和大家一起分享一下简单的实现过程. 最后要实现的结果:以二级域名的形式传递城市拼音并解析.如下图所示: 第一步:创建一个UrlProvider.cs类文件,其类要继承路由基类RouteBase.  代码如下 复制代码 继承RouteBase后需要实现两个方法: public override RouteData GetRouteData(HttpContextBase httpContext) {     throw new NotImplem

php中三元运算符用法

 语法:条件 ? 结果1 : 结果2 说明:问号前面的位置是判断的条件,如果满足条件时结果1,不满足时结果2.    代码如下   <?PHP $id = isset($_GET['id']) ? $_GET['id'] : false; ?> 一条代码替代了很多的代码.首先,它使用isset ()函数,检查$_GET['id']是否存在.如果$_GET['id']确实存在,它将返回它的价值.但是,如果它不存在,条件即为假,这时返回的是false.$id的值取决于$_GET['id']是否存在

php中三元运算符用法详解

语法:条件 ? 结果1 : 结果2 说明:问号前面的位置是判断的条件,如果满足条件时结果1,不满足时结果2.    代码如下 复制代码 <?PHP $id = isset($_GET['id']) ? $_GET['id'] : false; ?> 一条代码替代了很多的代码.首先,它使用isset ()函数,检查$_GET['id']是否存在.如果$_GET['id']确实存在,它将返回它的价值.但是,如果它不存在,条件即为假,这时返回的是false.$id的值取决于$_GET['id']是否

python三元运算符实现方法_python

这是今天在温习lambda表达式的时候想到的问题,众所周知C系列语言中的 三元运算符(?:)是一个非常好用的语句, 关于C中的三元运算符 表达式1?表达式2:表达式3 那么在python应该如何实现呢,请看下面例子: 答案是:X = (表达式1)and 表达式2(真值返回)or 表达式3(假值返回) 举个例子: 复制代码 代码如下: def main():    y = 5    x = (y > 5) and 2 or 4    print x    pass 这段代码的是意思的输出是4,可以

在ASP.NET Atlas中调用Web Service—处理错误

asp.net|web|错误 在本系列的上一篇(在ASP.NET Atlas中调用Web Service--介绍及简单应用)中,我们熟悉了Atlas中调用Web Service的最基础方法,但是在实际开发中,仅仅发出请求并等待返回结果是不够的,我们大都需要考虑对错误超时等的处理,也要允许用户取消操作.幸运的是,Atlas对Web Service中的Web Method的封装也充分考虑到了这些需求.让我们举一个Web Method的例子来说明,例如,对于如下的Web Method: public