首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C#学习笔记 控制流

bool b = false; if (b) { //当b为真时执行的语句 } else //当b为假是执行的语句 else 子句是可选的,另外还可以if 嵌套,来执行多重判断。...同样,在循环体中应该有能够改变执行条件的增量语句。 foreach循环 foreach 循环常用来迭代某个集合中的所有项。...int []array={1,2,3,4,5}; foreach(int i in array) { Console.WriteLine(i); } 需要注意的是,在foreach 循环中,不能改变集合中的项...需要注意的是,goto 语句不能跳到其它代码块中,不能跳出类的范围,也不能跳出finally 语句块。由于goto 常常会破坏合理的编程结构,因此不推荐在C#这样的面向对象语言中使用goto语句。...另外,如果break语句没有放在switch语句或者循环语句中,就会发生错误。 return语句 return语句用于退出方法。如果方法没有返回值,那么就使用空的return语句。

43720
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    C#中的枚举器(译)

    这在C# 2.0中比 C# 1.1更容易实现一些。作为演示,我们先在 C# 1.1中为一个简单的集合添加枚举,然后我们修改这个范例,使用新的C#2.0 枚举构建方法。...在这里为了程序简单就没有做数组下标越界的检测。 从感觉上看,ListBox像是一个集合,如果可以使用集合中通常使用的 foreach 循环来获取listBox中的所有字符串将会是非常便利的。...IEnumerable 类和与其相关的 IEnumerator类之间的关系有一点微妙。实现IEnumerator接口的最好办法是在IEnumerable类里创建一个嵌套的IEnumerator类。...public object Current { get { return(lbt[index]); } } 在1.1中,所有想要通过foreach循环来迭代的类都需要实现IEnumerable...C# 2.0 的解救办法 使用C# 2.0 这些问题如同五月末的雪般融化了。在这个例子的2.0版本中,我重写上面的列表,使用C# 2.0的两个新特性:泛型 和 枚举器。

    1.9K40

    C#冒泡排序算法

    在计算机科学中,排序算法是一类非常重要的算法,它们用于将一系列元素按特定顺序排列。...冒泡排序(Bubble Sort)是最简单的排序算法之一,它通过重复遍历待排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。...冒泡排序的基本原理冒泡排序的基本思想是:比较相邻的元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复进行直到没有再需要交换,也就是说该数列已经排序完成。...然后,我们使用两层嵌套循环来实现冒泡排序算法。外层循环控制排序的总轮数,内层循环负责在每一轮中进行相邻元素的比较和交换。当内层循环完成时,最大的元素会被放置在数组的最后位置。...例如,我们可以在每一轮排序后,记录最后一次交换发生的位置。如果一轮排序中没有发生任何交换,说明数组已经排序完成,我们可以提前结束排序。

    2.3K00

    【深入浅出C#】章节 6: 异常处理和调试:异常的概念和处理机制

    1.5 try-catch-finally 嵌套 在 C# 中,try-catch-finally 块可以进行嵌套,即在一个 try 块或 catch 块中嵌套另一个 try-catch-finally...四、异常链 4.1 InnerException 属性 在 C# 中,InnerException 属性是 Exception 类的一个成员,它用于获取或设置引发当前异常的内部异常(即嵌套异常)。...4.2 构建异常链 在 C# 中,我们可以使用 InnerException 属性来构建异常链,将一个异常嵌套在另一个异常中,形成异常链。...如果没有合适的处理逻辑,可以考虑让异常继续向上层抛出,或者至少记录日志。 避免在循环中捕获异常:在循环中捕获异常可能会导致性能问题。...如果可能的话,在循环外部进行异常处理,或者在循环内部使用条件判断来避免异常的发生。

    1.1K40

    《看聊天记录都学不会C#?太菜了吧》(6)多晦涩的专业术语原来都会那么简单

    太菜了吧》(10)C#偷懒的开始永无止境的循环?—— 循环 《看聊天记录都学不会C#?太菜了吧》(9)有一些人在学习编程的时候总以为代码是死板的—— if 嵌套 《看聊天记录都学不会C#?...太菜了吧》(6)多晦涩的专业术语原来都会那么简单—— 布尔逻辑 《看聊天记录都学不会C#?太菜了吧》(5)C# 中可以用中文名变量?—— 输入、运算 《看聊天记录都学不会C#?...小C:if 就是一个表示逻辑判断的关键字,在 if 后的圆括号中输入判断条件,这里是 password==“mima” 意思是判断 password 这个字符串变量存储的内容是否是 mima 这个字符串...小媛:你这里是不是写错了,你用两个等于号了。 小C:没错哟,在这里使用两个等于号正式表示判断这两个等于号的左右两边是否相等,因为我们在 C# 中使用一个等于号一般是用来表示程序赋值的意思。...小C:嗯,因为我们条件判断错误后没有任何代码进行显示,不过我们可以加条件判断错误后需要执行的内容。

    44920

    从C#到TypeScript - Promise

    其实C#在Task出现之前也是有类似场景的,Async Programming Mode时代,用Action和Func做回调也很流行,不过也是意识到太多的回调嵌套代码可读性差且维护不易,微软引入了Task...JavaScript同样在ES6开始支持Promise和Generator,并在ES7中提出支持async await的议案。...Promise不能在任务进行中取消,只能等结果返回,这点上不如C#的Task,Task可以通过CancelTaskToken来取消任务。...Promise 在实际场景中,我们可能需要在一个异步操作后再接个异步操作,这样就会有Promise的嵌套操作。...Promise还有一个方法race同样是并行执行多个Promise,不同于all的是它的成功状态和错误状态一样,只要有一个成功就成功,如同C# Task的Any方法。

    1.6K80

    ☀️ 学会编程入门必备 C# 最基础知识介绍(六)——接口、命名空间、预处理指令、正则表达式、异常处理、文件的输入与输出

    在一个命名空间中声明的类的名称与另一个命名空间中声明的相同的类的名称不冲突。...C# 编译器没有一个单独的预处理器,但是,指令被处理时就像是有一个单独的预处理器一样。在 C# 中,预处理器指令用于在条件编译中起作用。与 C 和 C++ 不同的是,它们不是用来创建宏。...处理当方法指向超出范围的数组索引时生成的错误 System.ArrayTypeMismatchException 处理当数组类型不匹配时生成的错误 System.NullReferenceException...处理当依从一个空对象时生成的错误 System.DivideByZeroException 处理当除以零时生成的错误 System.InvalidCastException 处理在类型转换期间生成的错误...Throw e } ---- C# 文件的输入与输出⛄️ 一个 文件 是一个存储在磁盘中带有指定名称和目录路径的数据集合。当打开文件进行读写时,它变成一个 流。

    1.4K30

    ☀️ 学会编程入门必备 C# 最基础知识介绍——带你认识 C# 中的几种循环结构( for & while & do...while)

    嵌套循环 可以在 while、for 或 do…while 循环内使用一个或多个循环。 ---- C# for/foreach 循环????...如果为真,则执行循环,这个过程会不断重复(循环主体,然后增加步值,再然后重新判断条件)。在条件变为假时,for 循环终止。...C# 嵌套循环????...循环控制语句更改执行的正常序列。当执行离开一个范围时,所有在该范围中创建的自动对象都会被销毁。 C# 提供了下列的控制语句。...---- C# break 语句 C# 中 break 语句有以下两种用法: 当 break 语句出现在一个循环内时,循环会立即终止,且程序流将继续执行紧接着循环的下一条语句。

    1.4K30

    python 三元表达式 if for 构建List 进阶用法

    在分支语句中使用else子句在一些常见的编程语言中的用法基本相同,类似于提供了一条默认的执行路径,配合if等条件判断语句使用,相比其它的编程语言(c#, java, js等)在python中,else有一些特殊的用法...1.配合for/while循环语句使用 在for循环语句的后面紧接着else子句,在循环正常结束的时候(非return或者break等提前退出的情况下),else子句的逻辑就会被执行到。...,代码更简洁没有那么多要描述如何做的“过程式”准备工作。...2.配合 try except错误控制使用 在异常处理语句中,else有相似的用法,当try代码块没有抛出任何的异常时,else语句块会被执行到。...,else语句里的逻辑会被执行,当然这个例子可能并没有什么太多的实际的用处,但大致能说明else在错误处理中的用处:简化逻辑,避免使用一些标志值就能够准确把握是否发生错误的情况来做一些实际的操作(比如在保存数据的时候如果发生错误

    8.3K00

    ☀️ 学会编程入门必备 C# 最基础知识介绍(三)——变量、常量、运算符、判断、循环

    在 C# 中,每个变量都有一个特定的类型,类型决定了变量的内存大小和布局。范围内的值可以存储在内存中,可以对变量进行一系列操作。...嵌套 if 语句 您可以在一个 if 或 else if 语句内使用另一个 if 或 else if 语句。 switch 语句 一个 switch 语句允许测试一个变量等于多个值时的情况。...do…while 循环 除了它是在循环主体结尾测试条件外,其他与 while 语句类似。 嵌套循环 可以在 while、for 或 do…while 循环内使用一个或多个循环。...---- 循环控制语句 循环控制语句更改执行的正常序列。当执行离开一个范围时,所有在该范围中创建的自动对象都会被销毁。 C# 提供了下列的控制语句。...看完了知识点,简单做个小测试呀(不许先看答案哦,自己在脑壳中思考一下思路) 1.从键盘输入一个三位的正整数,按数字的相反顺序输出 2.任意输入两个数,计算它们的和差积商 3.交换两个int类型变量的值

    77720

    (7)3分钟搞定 C# 逻辑运算

    太菜了吧》(10)C#偷懒的开始永无止境的循环?—— 循环 《看聊天记录都学不会C#?太菜了吧》(9)有一些人在学习编程的时候总以为代码是死板的—— if 嵌套 《看聊天记录都学不会C#?...太菜了吧》(6)多晦涩的专业术语原来都会那么简单—— 布尔逻辑 《看聊天记录都学不会C#?太菜了吧》(5)C# 中可以用中文名变量?—— 输入、运算 《看聊天记录都学不会C#?...小媛:还不是你的原因出差了几天。 小C:哈哈哈,非常抱歉有几天不写文了,那现在接着上一节的内容讲吧。 小媛:上一节内容是啥? 小C:你竟然忘记了,没有好好自己去复习吗?...小C:例如,你在登录微信、QQ、CSDN 的时候需要输入账号密码,而账号密码需要同时正确,否则就会错误。 小媛:你的意思是要判断这个帐号和密码都是要同时正确才 OK 的意思吗?...你在 if 后面的条件中,好像使用 && 连接了两个条件?

    50530

    --03:控制流

    由于C#是同时支持值模型和引用模型的,那么如下代码如果我不告诉你stu这个变量是值类型还是引用类型,恐怕你是无法确定最终结果的吧。...//在多路赋值中交换两个变量的值太简单了。 a,b=b,a; //如果没有这种语言特性,那么就需要引入临时变量了。...在结构化的程序中,一个子程序中的流程控制都可以通过顺序、选择、循环(迭代、递归)来描述,结构化语言不依赖标签(上面例子中的label1),而是词法上嵌套的词法边界作为流程控制的结构单元。...还存在一种情况,其中深层嵌套的子程序中发生了一些情况,导致无法继续执行下去,而且因为没有足够的环境信息,甚至无法合适的结束自己的工作,这种情况下,唯一能做的就是”退回去“,一直回退到能够恢复执行的地方,...如果是无意间的修改,那么这种错误很则难定位;如果是有意修改,则会导致理解上的难度。 可以用个goto跳出跳入这种循环,比如在i没有争取初始化时就跳入循环的这种错误,编译器却没办法察觉到。

    2K100

    【答疑解惑】为什么这么多人不喜欢用goto?

    这样说当然也没有错。 但是一般我们在学习是都会被有经验的程序员提醒尽量不要使用goto语句,那么这种说法到底是怎么来的呢?笔者结合自身的工作经验并查询了相关资料,在这里分享一下。...如有限状态自动机的实现、跳出嵌套循环以及异常处理。 大概最著名的对于GOTO的批评是艾兹格·迪杰斯特拉(Edsger Wybe Dijkstra)在1968年的一篇名稱為《GOTO陳述有害論》的論文。...在一些更新的高级编程语言,如Java不提供goto语句,它虽然指定goto作为关键字,但不支持它的使 用,使程序简洁易读;尽管如此后来的c#还是支持goto语句的,goto语句一个好处就是可以保证程序存在唯一的出口...另一方面,goto语句只是不提倡,当然不是禁用,那么在什么情况下可以使用goto语句呢? 可以考虑使用goto的情形: 从多重循环中直接跳出 ; 出错时清除资源; 可增加程序的清晰度的情况。...3) 不能从一段复杂的执行状态中的位置goto到另外一个位置,比如,从多重嵌套的循环判断中跳出去就是不允许的。    4)应该避免像两个方向跳转。这样最容易导致"面条代码"。

    2.2K50

    C#学习记录

    有丰富的内置运算符: 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 其他运算符 运算符 描述 实例 + 把两个操作数相加 A + B 将得到 30 - 从第一个操作数中减去第二个操作数 A...if…else 语句 一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为假时执行。...嵌套 if 语句 您可以在一个 if 或 else if 语句内使用另一个 if 或 else if 语句。 switch 语句 一个 switch 语句允许测试一个变量等于多个值时的情况。...Exp2 : Exp3; 六、C# 循环 循环类型 描述 while 循环 当给定条件为真时,重复语句或语句组。它会在执行循环主体之前测试条件。...for/foreach 循环 多次执行一个语句序列,简化管理循环变量的代码。 do…while 循环 嵌套循环 您可以在 while、for 或 do…while 循环内使用一个或多个循环。

    19320

    C# 发展历史及版本新功能介绍

    abstract sealed 基类 new 修饰符(嵌套部分) 泛型约束 匿名方法 在 2.0 之前的 C# 版本中,声明委托的唯一方式是使用命名方法。...到达迭代器方法的结尾时,循环便已完成。 协变和逆变 在 C# 中,协变和逆变能够实现数组类型、委托类型和泛型类型参数的隐式引用转换。 协变保留分配兼容性,逆变则与之相反。...C# 2.0 版引入了迭代器。 简单地说就是可以使用 foreach 循环对 List(或其他可枚举类型)中的项进行循环访问。...如果同一个命名空间中的两个类含有扩展类型相同的方法,就没有办法做到只用其中一个类中的扩展方法。...该目标针对新库功能无缝集成到语言的简洁设计进行了平衡。 未来版本的 C# 中还会包括需要标准库中的新类型和成员的新功能。 必须了解如何管理工作中的这些依赖项。

    4.2K20
    领券