C#流程控制语句简单描述

开发 后端
这里介绍C#流程控制语句,包括分支语句、switch 语句、循环语句、goto 的返回、if、else 和 else if等方面的全面介绍

本文向大家介绍C#流程控制语句,可能好多人还不了解C#流程控制语句,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。

C#流程控制语句

在这两种语言中,C#流程控制语句是非常相似的,但是这一部分也会讨论它们的一些细微差别。

1.分支语句
分支语句根据特定的条件改变运行时程序执行的流程。

2.if、else 和 else if
这些在两种语言中是一样的。

3.switch 语句
在两种语言中,switch 语句都提供条件多分支操作。但是有点不同的是,Java 允许您“越过”一个 case 并执行下一个 case,除非您在 case 的末尾使用了 break 语句。然而,C# 需要在每个 case 的末尾都使用 break 或 goto 语句,如果两者都不存在,则编译器会产生下列错误:

  1. Control cannot fall through from one case label to another. 

不过请注意,在没有指定要执行的代码的地方,当 case 匹配时,控制会越过随后的 case。当在 switch 语句中使用 goto 时,我们只能跳至同一 switch 中的另一个 case 块。如果我们想要跳至 default case,我们可以使用“goto default;”,否则,我们需要使用“goto case cond;”,其中 cond 是我们希望跳至的 case 的匹配条件。Java 的 switch 语句的另一个不同之处在于,在 Java 中,我们只能对整数类型使用 switch 语句,而 C# 允许我们对字符串变量使用 switch 语句。

例如,下面的程序在 C# 中是合法的,但在 Java 中却是不合法的:

  1. switch (args[0])  
  2. {  
  3. case "copy":  
  4. ...  
  5. break;  
  6. case "move":  
  7. ...  
  8. goto case "delete";  
  9. break;  
  10. case "del":  
  11. case "remove":  
  12. case "delete":  
  13. ...  
  14. break;  
  15. default:  
  16. ...  
  17. break;  

4.goto 的返回
在 Java 中,goto 是一个没有实现的保留关键字。然而,我们可以使用带有 break 或 continue 标签的语句来达到与 goto 相似的目的。

C# 允许 goto 语句跳至带有标签的语句。不过请注意,为了跳至一个特定的标签,goto 语句必须在该标签的范围内。换句话说,goto 不可用来跳进一个语句块(不过,它可以跳出一个语句块)、跳出一个类,或退出 try...catch 语句中的 finally 块。不过请注意,在大多数情况下,我们都不鼓励您使用 goto,因为它违反了面向对象编程的良好实践。

5.循环语句
循环语句重复指定的代码块,直到满足给定的条件为止。

1).for 循环
在两种语言中,for 循环的语法和操作均相同:

  1. for (initialization; condition; expression)  
  2. statement; 

2).foreach 循环
C# 引入了一种新的循环类型,称为 foreach 循环(类似于 Visual Basic 的 For Each)。foreach 循环允许遍历支持 IEnumerable 接口的容器类中的每一项(例如:数组)。下面的代码说明了如何使用 foreach 语句来输出一个数组的内容:

  1. public static void Main()  
  2. {  
  3. int[] arr1new int[] {1,2,3,4,5,6};  
  4. foreach ( int i in arr1)  
  5. {  
  6. Console.WriteLine("Value is {0}", i);  
  7. }  

在 C# 中的数组部分,我们将更详细地介绍 C# 中的数组。

3).while 和 do...while 循环
在两种语言中,while 和 do...while 语句的语法和操作均相同:

  1. while (condition)  
  2. {  
  3. //statements  
  4. }  
  5. //As usual, don't forget the trailing ; in do...while loops:  
  6. do  
  7. {  
  8. //statements  
  9. }  
  10. while(condition); 

以上介绍C#流程控制语句。

【编辑推荐】

  1. C# SystemMenu类介绍
  2. C# VSProject对象基础介绍
  3. C#创建Web应用程序项目剖析
  4. C#调用Windows服务项目基础描述
  5. C#建立项目简单分析
责任编辑:佚名 来源: 51CTO.com
相关推荐

2009-09-07 14:33:02

C# switch语句

2010-05-11 12:53:58

Unix awk

2009-08-31 18:32:01

C# ListBoxE

2009-08-28 16:51:32

C#线程控制

2010-07-19 10:11:58

Perl流程控制语句

2009-08-19 10:09:21

C#和C++

2009-08-21 17:31:58

C#垃圾回收

2009-09-02 13:01:11

C#多路广播

2009-08-13 17:58:34

C#存储过程

2009-09-16 09:01:40

C#多维数组

2009-08-28 09:30:48

C#命名属性

2009-09-01 18:25:32

C#结构实例

2009-09-07 15:31:49

C#支持事件

2009-08-27 10:01:52

C#自动属性

2009-09-01 17:08:35

C# Color枚举

2009-09-03 16:55:58

C#引用类型

2009-08-20 16:45:03

C#哈希值

2015-07-23 15:17:37

JavaScript循环语句

2011-08-24 16:36:00

T-SQL

2009-09-02 17:38:16

C#泛型支持
点赞
收藏

51CTO技术栈公众号