继续补习,这篇文章主要补习下控制流程的相关语句及关键字,在C#中用于控制流程的语句有:if、while、dowhile、switch、for、foreach、goto、break、continue,大多数都是我们日常开发所使用的,而这篇主要还是补习那些遗漏的知识。

以下是本文所要介绍的内容:

1、循环语句:for、foreach

2、switch中的break、return和goto

一、循环语句:for、foreach

循环语句是所有语言中都很常见的了,而下面记录的分别是一个我不曾使用过的for循环使用foreach我有时候会犯的一个错误

1、一个我不曾使用过的for循环,一般常规的定义for循环代码如下:

for(int i=0;i<count;i++)
{//do something
}

久而久之的使用过程中,我就习惯性的认为for循环当中只能包含一个参数,实则不然,for循环其实可以包含多个参数,并且可以实现一些特殊的判断,只需要在多个参数之间加上“,”分隔,如下代码:

for(int i=0,j=10;((i>5)&&(j<5));i++,j--)
{//do something;
}

当然中间用于逻辑判断的也可以是或、异或,或者更复杂的判断,虽然这种写法不常见(至少我没用到,或者我功力还太弱),但是在某些情况下还是应该比较有用的。

2、使用foreach我有时候会犯的一个错误,这个错误也是比较常见的,如下代码:

DataRow row=new DataRow();
foreach(var item in DataTable.Rows)
{item=row;
}

这个是个很典型的案例,就是foreach不允许在循环体内修改变量,如上面代码中的row,如果按照以上代码看一眼就能发现问题,但是实际开发过程中,有时候foreach中会有许多其他逻辑代码,往往会把这个忽略掉,所以需要谨记。

二、switch中的break、return和goto

用过switch的朋友都知道,switch是用来替换多if语句情况下的一个解决方法,同时在switch中的case子句下必须编写break关键字用来跳出,否则会出错,当然解决方法也不止这一个,C#中还有2个关键字可以解决这个问题——return和goto,下面就说下这2个语句在switch中使用需要注意的情况:

1、return,return主要是用于返回,如果在switch中case子句里使用return来代替break后,则switch后面的所有代码都不会执行,将直接跳转到方法的结束,所以使用起来需要慎之又慎。

2、goto,goto的话是一个很少见关键字,因为其使用会导致整个程序的错乱、不可读性甚至异常,同时C#语法中还规定了其不允许使用goto从一个方法跳转到另外一个方法,所以一般来说能用尽量少用,而goto在switch中使用有个比较特色之处,如下代码:

switch(A)
{case 1:var b=1;goto default;case 2:var c=1;goto default;default:var d=1;break;
}

对于在switch中需要无论哪种情况都走一下default的时候,可以使用goto语句来跳转到default,实现了一简单的代码复用。

[C#]C#补习——控制流语句相关相关推荐

  1. python编程if语法-python if控制流语句 语法笔记

    Python程序是由很多语句组成,python if执行条件语句也是其中的一种,也是本文要讲的重点.python if语句用于控制条件代码的执行,else和elif也是同样的功能,通常和for循环语句 ...

  2. python while循环语句-python while循环控制流语句结构与用法

    python while循环语句和for语句都是python的主要循环结构.while语句是python中最通用的迭代结构,也是一个条件循环语句.while与if语句有哪些不同,标准语法结构及循环使用 ...

  3. python中if控制语句_了解Python控制流语句——if语句

    控制流 截止到现在,在我们所看过的程序中,总是有一系列语句从上到下精确排列,并交由 Python 忠实地执行.如果你想改变这一工作流程,应该怎么做?就像这样的情况:你需要程序作出一些决定,并依据不同的 ...

  4. 程序员前辈归纳整理Python中的控制流语句的知识点(要记得收藏)

    这篇文章主要归纳整理了Python中的控制流语句的知识点,来自于IBM官方网站技术文档,需要的朋友可以参考下 程序流 Python 解释器在其最简单的级别,以类似的方式操作,即从程序的顶端开始,然后一 ...

  5. JSP控制流语句和运算符

    2019独角兽企业重金招聘Python工程师标准>>> 控制流语句 JSP提供对Java语言的全面支持.您可以在JSP程序中使用Java API甚至建立Java代码块,包括判断语句和 ...

  6. Python基本语法_控制流语句_if/while/for

    目录 目录 前言 软件环境 If 语句 While循环 break continue for 循环 遍历String 遍历Tuple 遍历List 遍历Dictionary 最后 前言 控制流语句用于 ...

  7. T-SQL 控制流语句

    Go 关键字可以对批量处理的SQLServer 进行分批次处理 DECLARE @i int;SET @i = 1;GO --分批了PRINT @i --@i在这个批里未定义 输出: 消息 137,级 ...

  8. swift 简单语句 控制流语句

    2019独角兽企业重金招聘Python工程师标准>>> 在 Swift 中,有两种类型的语句:简单语句和控制流语句.简单语句是最常见的,用于构造表达式和声明.控制流语句则用于控制程序 ...

  9. Python if控制流语句

    #!/usr/bin/env python # -*- coding:utf-8 -*-# Python if控制流语句 letter = input("please input:" ...

  10. 【学习笔记】9、控制流语句-IF条件判断

    控制流语句 顺序语句:从左到右,从上到下. 分支语句(条件判断语句):满足不同的条件去运行不同的代码. 循环语句:满足某种特定条件的语句被不断地运行. if条件判断语句 [第一种] if <条件 ...

最新文章

  1. Spring装配Bean---使用xml配置
  2. 医疗影像处理:去除医疗影像中背景的影响2D/3D【numpy-code】| CSDN博文精选
  3. 尾气冒黑烟是什么问题_对机动车环保检测尾气排放的了解!
  4. 高等数学与python高级应用_python高级应用程序与设计
  5. Sentinel(二十五)之Sentinel Dashboard同步Apollo存储规则
  6. 使用Arquillian测试安全的EJB
  7. oracle存储过程 取时间格式,Oracle存储过程获取YYYY-MM-DD的时间格式
  8. 生活中常见的电器,他们的工作原理你知道吗?
  9. 父组件传递值给子组件(一)
  10. QTP报错“缺少对象WScript”
  11. python毕业设计作品基于django框架 校园失物招领系统毕设成品(6)开题答辩PPT
  12. 一个android本地txt阅读器的思路与实现
  13. 基于蒙特卡洛方法的机器人工作空间MATLAB仿真
  14. postman测试是否支持跨域_POSTMAN接口测试
  15. PPT文件不能编辑的原因
  16. 03-页面布局[Python]
  17. PDF不能编辑怎么办,如何去掉编辑权限
  18. html全屏ipad顶部状态栏,iPad横屏和竖屏界面尺寸设计规范【最全】
  19. lol无限乱斗服务器,LOL2019新模式无限乱斗怎么玩 LOL无限乱斗玩法攻略
  20. jQuery获得当前元素id

热门文章

  1. (日常搬砖)voc等xml格式的数据集转换为yolo可用的txt格式的数据集(亲测可用)
  2. webpack中package-lock.json的作用
  3. Curator Zookeeper分布式锁
  4. box2dweb基础
  5. 了解mysql的undo log
  6. .NET Remoting Basic(4)-客户端调用方式
  7. poj 2705 Tangled in Cables 基础prim
  8. 苹果mac三维动画设计渲染软件:Cinema 4D R20 (c4d r20)
  9. 如何使用 macOS 帮助菜单?
  10. 如何在Mac上创建和使用符号链接?