摘要

  关系表达式、逻辑表达式、分支结构的总结:if-else、if-else if-else、switch-case
一、关系运算符
  >,==,<…
  关系表达式的结果是bool类型,true或false

二、逻辑表达式
  1.逻辑表达式

    逻辑与:&&:逻辑与两边的表达式都为真,最后才为真
    逻辑或:||:逻辑或两边的表达式任意一个为真,最后为真
    非:!:相反的值

  2.练习:计算闰年
    由两个大条件组成:1).能被400整除  2).或者是:能被4整除但是不能被100整除

int year = ;
if((year % ==) || (year % == && year % != ))
{
Console.WriteLine($"{year}是闰年");
}
else
{
Console.WriteLine($"{year}不是闰年");
}

  3.与或的短路
    逻辑与&&:当第一个不成立的时候,不会再进行后面表达式的校验
    逻辑或||:当第一个成立的时候,不会再进行后面表达是的校验
    如:
    int a = 5;
    int b = 10;
    int result = ++a > 50 && ++b > 1;
    运算完成,a为6,b为10,因为&&左边表达式不成立,不会再运算右边的表达式

三、分支结构
  1.if-else语句
    if(条件1)
    {
      代码块1
    }
    else
    {
      代码块2
    }

    解释:如果条件1满足执行代码块1,不执行代码块2
      如果条件1不满足,跳过代码块1,只执行代码块2

  2.if-else if-else语句
    if(条件1)
    {
      语句块1
    }
    else if(条件2)
    {
      语句块2
    }
    else if(条件3)
    {
      语句块3
    }
    else
    {
      语句块4
    }

    语句块5

    执行逻辑:
      先判断条件1,如果条件1成立,执行语句块1,然后不执行后面的else if 及里面的语句块;如果条件1不成立,进入到下面的else if,判断条件2,如果条件2成立,执行语句块2,否则执行后面else if;前面所有的if都不成立才会去执行else中的语句块4。
      不管前面的条件如何,都回去执行语句块5。

  3.switch-case语句
    string level = "字符";
    switch(level)
    {
      case "qwr":
        //做操作
        break;
      case "字符":
        break;
      case "asd":
        break;
      …
      default:
        break;
    }

    用switch后面括号中的变量,与case中的值去匹配,如果匹配上就执行后面的代码,执行到break,后面的就不执行了;如果case后面的一个也没匹配上,就执行default后面的代码,执行到break结束。
    PS:break代表跳出此语句结构(switch-case)
    PS:default的位置和执行顺序没关系,如果default放到最前面,也是最后执行
    PS:如果不写break,会出现贯穿的情况,就是会继续去往后执行

  4.switch-case的case可以合写
    当变量等于某一个值,且需要执行相同的操作时,case可以共用
    如:
    switch(变量)
    {
      case "A":
      case "B":
        //To-do
        break;
      case "C":
      case "D":
      case "E":
        //To-do
        break;
      default:
        break;
    }

C#基础知识总结(三)的更多相关文章

  1. 运维之Linux基础知识(三)

    运维之Linux基础知识(三) 1. 查看文本 cat tac more less head tail 1.1 cat 连接并显示文件 cat -n:在显示的时候,将每一行编号 -E:显示结束符$ - ...

  2. Java JDBC的基础知识(三)

    在前面的Java JDBC的基础知识(二)和(三)中,主要介绍JDBC的原理和简单的应用过程.尤其在(二)中,可以发现代码进行多次try/catch,还有在前面创建连接等过程中好多参数我都给写定了. ...

  3. 基础知识《三》java修饰符

    一.修饰符 private 成员随时都是“私有”的,任何人不得访问.但在实际应用中,经常想把某些东西深深地藏起来,但同时允许访问衍生类的成员. protected 关键字可帮助我们做到这一点.它的意思 ...

  4. 林大妈的JavaScript基础知识(三):JavaScript编程(2)函数

    JavaScript是一门函数式的面向对象编程语言.了解函数将会是了解对象创建和操作.原型及原型方法.模块化编程等的重要基础.函数包含一组语句,它的主要功能是代码复用.隐藏信息和组合调用.我们编程就是 ...

  5. Jquery源码中的Javascript基础知识(三)

    这篇主要说一下在源码中jquery对象是怎样设计实现的,下面是相关代码的简化版本: (function( window, undefined ) { // code 定义变量 jQuery = fun ...

  6. Android中的一些基础知识(三)

    最近在回顾Android的基础知识,就把一些常见的知识点整理一下,以后忘了也可以翻出来看一看. 在TextView中显示图像(使用< img>标签) 在TextView中显示图片的方法有许 ...

  7. ASP.NET Core 基础知识(三) Program.cs类

    ASP.NET Framework应用程序是严重依赖于IIS的,System.Web 中有很多方法都是直接调用的 IIS API,并且它还是驻留在IIS进程中的.而 ASP.NET Core 的运行则 ...

  8. java 基础知识(三)

    Arraylist与Vector的区别 清浅池塘 程序员,专栏:Java那些事儿唯一作者,咨询前请先点详细资料   162 人赞同了该文章 这几天工作有点忙,有很多代码需要写,更新文章有点慢,说声抱歉 ...

  9. python基础知识(三)

    摘要:主要涉及新数据类型set集合.三元运算.深浅拷贝.函数基础.全局变量与局部变量 一.set --> 无序,不允许重复的集合 不允许重复的列表,   1,创建    s = set() 接收 ...

  10. web前端基础知识-(三)JavaScript基本操作

    JavaScript 是一种轻量级的编程语言. JavaScript 是可插入 HTML 页面的编程代码. JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行. JavaScrip ...

随机推荐

  1. [转] Snapshotting with libvirt for qcow2 images

    http://kashyapc.com/2011/10/04/snapshotting-with-libvirt-for-qcow2-images/ Libvirt 0.9.6 was recentl ...

  2. Java 动态字节码技术

    对 Debug 的好奇 初学 Java 时,我对 IDEA 的 Debug 非常好奇,不止是它能查看断点的上下文环境,更神奇的是我可以在断点处使用它的 Evaluate 功能直接执行某些命令,进行一些 ...

  3. 教你一招用 IDE 编程提升效率的骚操作!

    阅读本文大概需要 3 分钟. IDEA 有个很牛逼的功能,那就是后缀补全(不是自动补全),很多人竟然不知道这个操作,还在手动敲代码. 这个功能可以使用代码补全来模板式地补全语句,如遍历循环语句(for ...

  4. 吴恩达机器学习笔记21-正则化线性回归(Regularized Linear Regression)

    对于线性回归的求解,我们之前推导了两种学习算法:一种基于梯度下降,一种基于正规方程. 正则化线性回归的代价函数为: 如果我们要使用梯度下降法令这个代价函数最小化,因为我们未对theta0进行正则化,所 ...

  5. 性能瓶颈之Session

    如果Source,Target和Mapping都不存在性能上的瓶颈,则问题可能会出在Session 以下问题可导致Session有性能上的瓶颈 1) 缓存小 2) 缓冲内存小 3) commit提交间 ...

  6. Group By Rollup

    Rollup与group by组合使用,可对分组结果进行进一步的汇总. 创建数据表 select * from emp_test (1) rollup单个字段 如按照country字段进行分组,并在最 ...

  7. Spring Boot(八):RabbitMQ 详解

    RabbitMQ 即一个消息队列,主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用. 消息中间件在互联网公司的使用中越来越多,刚才还看到新闻阿里将 RocketMQ 捐献给了 ...

  8. java开发之多线程基础篇

    首先我们先来了解下线程的生命周期上一张图: Java线程具有五中基本状态 新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t = new MyThread(); 就绪状态( ...

  9. Kubernetes集群搭建之Etcd集群配置篇

    介绍 etcd 是一个分布式一致性k-v存储系统,可用于服务注册发现与共享配置,具有以下优点. 简单 : 相比于晦涩难懂的paxos算法,etcd基于相对简单且易实现的raft算法实现一致性,并通过g ...

  10. 推荐一篇关于java集合的博文,写的很nice

    这也是我自己在网上看到的一篇博文,作者的博文都很棒,以后还会持续为大家推荐好的博文,只要大家不骂我只会转别人的博文,自己不会写,其实这些都是基础,前辈们已经在实践中总结的很细很全了,所以也没必要去总结 ...