C#中break,continue,return,,goto,throw的区别(转)

break     

语句用于终止最近的封闭循环或它所在的switch 语句。 控制传递给终止语句后面的语句(如果有的话)。

        /// <summary>/// break 示例/// 在此例中,条件语句包含一个应该从 1 计数到 100 的计数器/// 但 break 语句在计数达到 4 后终止循环。/// </summary>static void Main(){for (int i = 1; i <= 100; i++){if (i == 5){break;}Console.WriteLine(i);}}

 

continue 

语句将控制权传递给它所在的封闭迭代语句的下一次迭代。

        /// <summary>/// continue 示例/// 在此示例中,计数器最初是从 1 到 10 进行计数 // 但通过将 continue 语句与表达式 (i< 9) 一起使用/// 跳过了 continue 与 for 循环体末尾之间的语句。/// </summary>static void Main(){for (int i = 1; i <= 10; i++){if (i < 9){continue;}Console.WriteLine(i);}}

 

goto      

语句将程序控制直接传递给标记语句。goto的一个通常用法是将控制传递给特定的switch-case 标签或switch 语句中的默认标签。 goto语句还用于跳出深嵌套循环。

        /// <summary>/// goto 示例/// 输入 2 /// 示例输出/// Coffee sizes: 1=Small 2=Medium 3=Large/// Please enter your selection: 2 /// Please insert 50 cents. /// Thank you for your business./// </summary>static void Main() {Console.WriteLine("Coffee sizes: 1=Small 2=Medium 3=Large");Console.Write("Please enter your selection: ");string s = Console.ReadLine();int n = int.Parse(s); int cost = 0; switch (n) {case 1: cost += 25; break; case 2:cost += 25; goto case 1;case 3:cost += 50;goto case 1; default:Console.WriteLine("Invalid selection.");break; } if (cost != 0){ Console.WriteLine("Please insert {0} cents.", cost);} Console.WriteLine("Thank you for your business.");}

 

        /// <summary>/// goto 示例2/// 下面的示例演示了使用 goto 跳出嵌套循环/// 输入 44 示例输出 /// Enter the number to search for: 44/// The number 44 is found./// End of search./// </summary>static void Main(){int x = 200, y = 4; int count = 0; string[,] array = new string[x, y]; // Initialize the array:     for (int i = 0; i < x; i++)  for (int j = 0; j < y; j++)    array[i, j] = (++count).ToString();   // Read input:         Console.Write("Enter the number to search for: ");    // Input a string:        string myNumber = Console.ReadLine();      // Search:    for (int i = 0; i < x; i++)    {            for (int j = 0; j < y; j++){            if (array[i, j].Equals(myNumber))  {                 goto Found;       }            }        }       Console.WriteLine("The number {0} was not found.", myNumber);    goto Finish;   Found:     Console.WriteLine("The number {0} is found.", myNumber); Finish:        Console.WriteLine("End of search.");  }

 

return   

语句终止它出现在其中的方法的执行并将控制返回给调用方法。它还可以返回一个可选值。如果方法为void 类型,则可以省略return 语句。

 

throw    

语句用于发出在程序执行期间出现反常情况(异常)的信号。通常throw语句与try-catch或try-finally 语句一起使用。当引发异常时,程序查找处理此异常的catch 语句。也可以用

throw 语句重新引发已捕获的异常。

 

        /// <summary>/// thow 示例/// </summary>static void Main(){string s = null;if (s == null){throw new ArgumentNullException();}Console.Write("The string s is null");// not executed   }

 

转载于:https://www.cnblogs.com/zhizhuo-1991/p/5591662.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/490472.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python excel 转json_Python办公自动化| word 表格转excel

之前写过一篇 Python办公自动化 | 批量word报告生成工具 &#xff0c;有小伙伴提出了逆向需求&#xff0c;即&#xff1a;从批量word中获取内容并写入excel&#xff0c;需求背景是汇总一些材料&#xff0c;举例&#xff1a;实习鉴定表、个人简历、档案等。实际需求是这样的&…

python在图中画一条垂直线(matplotlib)

matplotlib.pyplot.axvline https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.axvline.html?highlightaxvline#matplotlib.pyplot.axvline 用法&#xff1a; plt.axvline(x, colorr, linestyle--, labelxxx) plt.legend()

坦途与波折:我们需要什么样的人工智能?

来源&#xff1a;资本实验室历史车轮滚滚向前&#xff0c;如今我们正在进入人工智能时代。其中的坦途足以让我们乐观和振奋&#xff0c;其中的波折也可能会让我们不安或担忧。面对未来&#xff0c;我们需要坚持三个基本要点&#xff1a;效率、环保与福祉。1.人工智能与传统产业…

python画一条水平直线(matplotlib)

matplotlib.pyplot.axhline https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.axhline.html 用法&#xff1a; plt.axhline(0.06, colorr, linestyle--, labelxxx) plt.legend(locupper left)

我该如何维护一个烂项目?

最近接手了一个很烂的项目&#xff0c;前后3批人开发。A开发一段时间&#xff0c;不知什么原因离职了&#xff0c;交接给了B&#xff1b;B也是开发一段时间&#xff0c;又是未知原因离职了&#xff0c;交接给C&#xff1b;C也是同样的手法交给了我。我一接手&#xff0c;发现了…

sql数字转换为字符_Python|图片转换为字符画^_^

我们很清楚什么是图片&#xff0c;无外乎png、jpg等格式的文件&#xff0c;例如这个?但什么是字符画呢&#xff1f;先看一下官方介绍&#xff1a;字符画&#xff0c;一种由字母、标点、汉字或其他字符组成的图画。简单的字符画是利用字符的形状代替图画的线条来构成简单的人物…

全球机器人产业趋势及特征

来源&#xff1a;创新研究当前&#xff0c;全球机器人市场规模持续扩大&#xff0c;工业机器人市场增速回落&#xff0c;服务、特种机器人增速稳定。技术创新围绕仿生结构、人工智能和人机协作不断深入&#xff0c;产品在教育陪护、医疗康复、危险环境等领域的应用持续拓展&…

matplotlib调整图例的位置

plt.legend(locxx) 其中loc的可选项有以下几种 upper right upper left lower left lower right right center left center right lower center upper center

使用spring-data-mongodb操作mongodb

mongodb.xml <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema/beans"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xmlns:mongo"http://www.springframework.org…

python支持向量机_支持向量机(SVM)Python实现

什么是支持向量机? “支持向量机”(SVM)是一种监督机器学习算法&#xff0c;可用于分类或回归挑战。然而&#xff0c;它主要用于分类问题。在这个算法中&#xff0c;我们将每一个数据项作为一个点在n维空间中(其中n是你拥有的特征数)作为一个点&#xff0c;每一个特征值都是一…

AR智能提升工业效率的4大场景与应用实践!

来源&#xff1a;北京物联网智能技术应用协会导 读 ( 文/ e-works整理 )德国学者提出“工业4.0”的概念&#xff0c;即以智能制造为主导的第四次工业革命&#xff0c;或革命性的生产方法。主要围绕两大主题&#xff0c;一是“智能工厂”&#xff0c;二是“智能生产”&#xff0…

matplotlib画图设置线条透明度

plt.plot(x, y, alpha0.5) alpha这个参数用于设置透明度&#xff0c;0~1之间 alpha越小&#xff0c;线条越透明

手机进销存系统/供应链管理系统

花了将近两个月的时间学习了一个企业级进销存项目&#xff0c;已经结束了两周多&#xff0c;现在终于有时间来对这个项目的学习做个总结了&#xff01; 一、首先介绍下这个项目 (注&#xff1a;本人目前大三&#xff0c;专业为信息管理&#xff0c;与编程沾边不多。而我对编程很…

如何评价马云和马斯克在世界人工智能大会的对话?

来源&#xff1a;刘锋的未来课堂马云和马斯克在世界人工智能大会的对话&#xff0c;虽然风轻云淡&#xff0c;天马行空&#xff0c;但两个人其实是针锋相对的&#xff0c;马云的观点是认为人工智能还是人类的工具&#xff0c;为人类的未来提供服务&#xff0c;马斯克继续保持他…

linux 检测mysql链接_MySQL笔记

#忘记原始密码1、修改 /etc/my.cnf&#xff0c;在 [mysqld] 小节下添加一行&#xff1a;skip-grant-tables12、重启mysql&#xff1a;service restart stop3、刷新权限&#xff1a;flush privileges;4、修改密码&#xff1a;alter user rootlocalhost identified by Kgj2019;若…

matplotlib设置多个图例横向水平放置

一般多个图例都是竖向放置 如果想要多个图例横向放置&#xff0c;设置plt.legend的ncol参数&#xff0c;ncol参数表示将图例分为多少列&#xff0c;以两个图例横向放置为例&#xff1a; plt.legend(ncol2)

内存对齐分配策略(含位域模式)

&#xff11;&#xff1a;内存对齐定义&#xff1a; 现在使用的计算机中内存空间都是按照字节划分的&#xff0c;从理论上讲似乎对任何类型的变量的访问可以从任何地址开始&#xff0c;但是实际上计算机系统对于基本数据类型在内存 中的存放位置都有限制&#xff0c;要求这…

科技部发布新一批国家新一代人工智能开放创新平台

来源&#xff1a;科技部8月29日上午&#xff0c;在上海举办的2019世界人工智能大会开幕式上&#xff0c;科技部李萌副部长发布了新启动建设的十家国家新一代人工智能开放创新平台。分别是&#xff1a;依托上海依图网络科技有限公司建设视觉计算国家新一代人工智能开放创新平台&…

开发里程碑计划_里程碑——让你轻松控制项目进度

对于项目结果的最好控制就是控制项目开发的过程&#xff0c;也就是控制项目开发过程中的几个关键节点——项目的里程碑事件。通过对里程碑事件的控制用于评估项目各阶段工作进展的有效性&#xff0c;以及及时的明确开发过程中存在的风险过程。我们在做项目开发计划的时候&#…

C++大小写字母互转

大写字母的ASCII码比小写字母的小&#xff0c;且两者相差32&#xff0c;所以要将大写字母转为小写字母&#xff0c;将大写字母32&#xff0c;反之&#xff0c;要将小写字母转为大写字母&#xff0c;小写字母-32 int main(){char c A;char c2 c 32;cout << c2 <<…