`
leonardleonard
  • 浏览: 821632 次
社区版块
存档分类
最新评论

C#中switch语句注意

阅读更多
大家肯定对switch语句并不陌生,它能够让程序根据控制表达式的值,从多个动作中作出选择(从逻辑过程看,和多分支语句if-else有些相似)。在C++和java中也有这一语句,不过在C#中,这一语句则有了些变化。先看下边一个例子:
switch(letter)
{
case 'a':
Console.WriteLine("aaaaa");
case 'b':
Console.WriteLine("bbbbb");
break;
}
的这个例子在“case 'a'”这部分会产生一个错误,因为程序会一直执行到“case 'b'”来,也就是发生了穿越,但是在C#中,是禁止穿越发生的。因此,你必须使用“break”“goto”或者“return”来阻止穿越的发生。但是下边的情况例外:
switch(letter)
{
case 'a':
case 'b':
Console.WriteLine("aaaaa");
break;
case 'c':
Console.WriteLine("ccccc");
break;
}
(上边的这种情况,相信不用解释,也能够明白。)
此时,就出现了另外一个问题,那就是:在特殊情况下,要使程序可以进行这种穿越,怎么实现?其实这也很简单,前边不是提到过吗,可以使用“goto”语句来防止程序的穿越,其实也可以用它来实现穿越,只需使用它将程序跳转到另一个“case”不就行了吗!

总结:在C++和java中的switch中,允许程序穿越,而C#中不允许,不过,可以使用“goto”语句变相的实现。 

 
分享到:
评论

相关推荐

    switch语句在java和c#中的区别

    在 Java 和 C# 中,`switch` 语句在语法和行为上有一些显著的区别,尤其是在处理多条 `case` 的连续执行和 `break` 的使用上。 首先,我们来看 C# 中的 `switch` 语句示例: ```csharp class StudentGrade { ...

    C#中一种替换switch语句更优雅的写法

    在C#编程中,当遇到大量条件分支时,传统的switch语句可能会变得冗长且不易维护。在这种情况下,我们可以寻找更优雅的替代方案。本文将介绍如何使用接口、枚举和字典集合来优化处理多条件逻辑,以提高代码的可读性和...

    switch语句大全下载

    在大多数支持switch语句的编程语言(如C、C++、Java、C#等)中,其基本语法如下: ```markdown switch(expression) { case value1: // code to be executed if expression matches value1; break; case value...

    c#Switch.rar

    在C#编程语言中,`switch`语句是一种条件控制结构,它允许程序根据不同的条件执行不同的代码块。`switch`语句在处理多个可能情况时比一系列`if...else if...else`语句更为简洁和高效。让我们深入探讨一下`switch`在...

    C# 用switch实现简单四则运算.sln.rar

    在C#编程语言中,`switch`语句是一种选择结构,用于执行多个可能的代码块之一,基于一个表达式的值。在这个"用switch实现的简单四则运算功能"项目中,开发者利用`switch`来创建了一个基本的计算器,非常适合C#初学者...

    使用switch语句构成的分支结构实现选择主菜单中的选项

    在许多编程语言中,`switch`语句是一种常见的分支结构,尤其在C、C++、Java、C#等语言中广泛使用。本主题将深入探讨如何使用`switch`语句来构建一个主菜单,让用户能够选择不同的功能。 `switch`语句的基本语法如下...

    初学者,C#中SWITCH的使用

    C#中的`switch`语句是一种多分支控制结构,它提供了比`if-else-if`更简洁的方式来处理多个可能的情况。对于初学者来说,理解并掌握`switch`的使用是十分重要的。 `switch`语句的基本语法如下: ```csharp switch ...

    c#.net程序设计(switch)-评定学生成绩等级

    本课件介绍了c#.net的 switch语句, 采用项目式和任务式方式组织各个知识点。内容通俗易懂, 非常适合没有编程基础的人进行学习.

    C#051break和switch今天星期几

    在C#编程语言中,`break` 和 `switch` 是两个关键的控制流程语句,它们在编写逻辑和控制程序执行路径时起着至关重要的作用。让我们深入了解一下这两个概念及其在实际开发中的应用。 首先,`switch` 语句是C#中用...

    c#基本语句

    ### C# 基本语句详解 #### 一、数据类型与变量声明 在 C# 开发过程中,了解各种...以上是对 C# 中基本语句的一些概述,通过这些基础知识的学习,开发者可以更好地理解和掌握 C# 的语法特性,进而编写出高质量的程序。

    C# try-catch与switch操作.rar

    在C#编程中,`try-catch`和`switch`语句是两种非常重要的控制流程结构,它们在处理异常和选择性执行代码块时起到关键作用。本压缩包中的资源可能是一个简单的C# Web应用程序示例,包含了网页的源代码(如`Default2....

    通过汇编码理解switch语句的原理

    在我们的例子中,由于`switch`语句中的`case`值是连续的,编译器可能会选择使用跳跃表。`switch3.s`和`switch3.c`文件可能是这个过程的产物,`switch3.s`包含汇编代码,而`switch3.c`可能是原始的C源代码。通过分析...

    C#各类语句

    在C#中,语句是程序的基本执行单元,包括控制流语句、声明语句、表达式语句等。在数据库交互方面,C#也提供了强大的支持,能够通过SQL语句进行数据操作。 1. **控制流语句**: - **条件语句**:如`if`、`else`、`...

    c#中switch case的用法实例解析

    在C#编程语言中,`switch`语句是一种条件控制结构,它允许程序根据不同的条件分支执行不同的代码块。在本实例中,我们看到`switch`与`case`结合使用,来实现一个简单的收银付费小程序。下面我们将深入探讨`switch`和...

    c# 经典语句汇集,c#初学者的天堂

    4. **switch语句**:`switch`语句提供了一种多分支选择,比如`switch (grade) { case "A": ...; break; ... }`,根据`grade`的值执行不同的代码块。 5. **数组与集合**:C#支持数组(如`int[] numbers = new int[5]...

    switch 语句与 case 语句一起使用,每个 case 对应一个可能的值.rar

    在C#、Java、C++等面向对象语言中,`switch`支持字符串(String)类型,而在JavaScript中,字符串支持是在ES6版本之后添加的。此外,某些语言如C++还允许在`case`标签下使用范围(如`case 1...5:`),这样可以简化...

    (C# winform)仅仅从鼠标单击获得四个点去画一条曲线,使用了switch语句

    由于要求使用`switch`语句,这通常意味着我们需要在代码中根据某个变量的值来选择不同的分支执行不同的绘图操作。在绘图过程中,我们可能会根据鼠标单击的顺序或位置来决定如何绘制曲线。例如,可能第一个点是曲线的...

    用switch语句判断每个月有多少天

    在其他编程语言中,如C#、C++或JavaScript,`switch`语句的语法可能略有不同,但基本思路是一样的。对于C#和C++,你可以在`case`后面直接写数字,而JavaScript则允许你使用字符串作为`switch`条件。 这个小程序不仅...

    C#中的switch case使用介绍

    您可能感兴趣的文章:c#入门之分支语句使用方法(三元运算符、if语句、switch语句)C#可以减少或不使用switch有什么方法choosesubject c# switchc#多线程编程基础C# 基础之运算符C#基础:Dispose()、Close()、Finalize...

    C#-使用C#编写的Switch仿真器-优质项目实战.zip

    `switch`是C#中的一个多路分支语句,它允许我们基于一个表达式的值执行不同的代码块。在Switch仿真器项目中,`switch`语句将用于模拟不同的操作,例如在不同的网络环境中切换设备模式。这有助于我们学习如何有效地...

Global site tag (gtag.js) - Google Analytics