if/else, while, for, switch之类的与其他语言差不多,对其他语言有一点了解的话基本可以做到无缝衔接。
就以几个例子带过这个部分吧。
Demo1 if/else & while
依旧是Program.cs
,将代码替换成如下:
1 | using System; |
这里使用了if/else
作为流程控制,当价格小于等于0
的时候,会要求用户重新输入id和价格。
以下代码将if/else
更换成while
进行流程控制:
1 | using System; |
Demo2 switch
switch
和if else-if else
有点的相似。
1 | using System; |
以上代码,day
是1
或者2
的时候会输出周一
,在3-7
分别输出对应日期,超过以上区间会输出不在周一到周日间
。
但是,如果在case 1:
下加入代码的话,就会造成编译错误:
1 | using System; |
如下:
MyFirstProject\MyFirstProject\Program.cs(14,17,14,24): error CS0163: Control cannot fall through from one case label (‘case 1:’) to another
这点与其他的语言稍微有所不同
Demo3 break & continue
continue
关键字会跳过剩下的代码,进入下一个循环。break
会跳出当前循环。
代码如下:
1 | using System; |
以上代码在遇到i
是偶数时,进入if
语句后跳过当前循环,进入下一个循环。
当i
是奇数时,进入else
语句,进入另一个循环。在这个循环中,当j
不等于i
的时候,会在console
上打印出j
的当前数,而在i
与j
相等的时候跳出当前循环。