博客
关于我
C#成神之路<10> C#代码中制定决策
阅读量:344 次
发布时间:2019-03-04

本文共 1713 字,大约阅读时间需要 5 分钟。

关系运算符都是二元运算符,将两个操作数和一个关系运算符关联起来得到一个关系表达式,最终返回一个逻辑true或false的状态。

如果语句

private void btnCalc_Click(object sender, EventArgs e){    bool flag;    int val;    string output = "number is even";    flag = int.TryParse(txtNumber.Text, out val);    if (flag == false)    {        MessageBox.Show("not a number, reinput");        txtNumber.Clear();        txtNumber.Focus();        return;    }    if (val % 2 == 1)    {        output = "Number is odd";    }    txtOutput.Text = output;}

中,TryParse()方法用于将字符串转换为数值并返回是否成功,out关键字用于初始化未知的变量,确保TryParse方法可以修改传递的变量。Clear()方法则用于清空文本框中的所有内容。

如果 else 语句

private void btnCalc_Click(object sender, EventArgs e){    bool flag;    int val;    string output;    flag = int.TryParse(txtNumber.Text, out val);    if (flag == false)    {        MessageBox.Show("not a number, reinput");        txtNumber.Clear();        txtNumber.Focus();        return;    }    if (val % 2 == 1)    {        output = "Number is odd";    }    else    {        output = "number is even";    }    txtOutput.Text = output;}

相比前者,增加了else子句,简化了逻辑,使代码更加清晰易懂。

三元运算符

private void btnCalc_Click(object sender, EventArgs e){    bool flag;    int val;    string output;    flag = int.TryParse(txtNumber.Text, out val);    if (flag == false)    {        MessageBox.Show("not a number, reinput");        txtNumber.Clear();        txtNumber.Focus();        return;    }    output = (val % 2 == 1) ? "Number is odd" : "number is even";    txtOutput.Text = output;}

进一步简化了代码,使用了更简洁的表达方式。

需要注意的是,没有大括号的if语句仅仅控制一个语句。

RDC代码

switch (expression1){    case 1: break;    case 2: break;    default: break;}

是一种更高效的代码表达方式,特别适用于多个条件分支的情况。默认情况下,可以调用ErrorLog()方法将错误信息写入日志文件,便于程序维护和调试。

逻辑运算符包括与(&&)、或(||)、非(!)等,所有运算符的结果均为true或false表达式。

转载地址:http://ousr.baihongyu.com/

你可能感兴趣的文章
我是程序员,我用这种方式铭记历史
查看>>
CSDN湘苗培优|保持热情,告别平庸
查看>>
Serverless 在大规模数据处理中的实践
查看>>
运营商的互联网蜕变,从沃云平台开始
查看>>
Docker精华问答 | task与executor有什么关系?
查看>>
英特尔强势上新一大波数据产品,小伙伴们“奔走相告”…… | 极客头条
查看>>
微信小程序生命周期 / 页面的生命周期 / 页面的用户行为
查看>>
YbtOJ 递推算法课堂过关 例5 平铺方案【递推(简单DP)】
查看>>
YbtOJ hash和hash表课堂过关 例1 字符串哈希【hash】
查看>>
CSUST 2021 周赛 2 题解
查看>>
前后端数据交互之表单
查看>>
剑指offer JZ21 栈的压入弹出序列
查看>>
实现基于scrapy框架的天气预报爬虫hengYangSpaider @572311文
查看>>
Netty4服务端入门代码示例
查看>>
操作系统前传第六课--开发中的辅助工具
查看>>
Linux系统编程44 信号 - 信号的响应过程分析!!!
查看>>
VL53L0x TOF激光测距的 stm32 HAL库驱动代码
查看>>
怎么玩LOG4J
查看>>
Oracle创建用户,分配表空间
查看>>
自定义标签(JSP2.0)简单标签
查看>>