前面两篇博客讲了C#的类字段以及类方法的定义,这篇博客主要讲一下C#的控制结构,和VB类似,用C#与VB比较的方法来学习这部分内容。
一、C#控制结构
二、VB控制结构
三、比较
C#中的控制结构和VB还是很相似的,基本结构大体上是一致的,只是语法上有些不同罢了。
选择
在C#中的If条件判断语句中,它不像VB一样,还要写end if 这个语句,直接写if ……else,或if……elseif……就可以了。但是我总感觉这样很别扭,可能是习惯了VB的语法吧,觉得没有End if,就跟没执行完一样。
然而C#中的switch Break语句就和VB中的select case语句很相似,只是把select换成switch,并在每个条件判断后面加上Break语句。查了查词典,switch是开关,转换,切换等意思,但是在这里我感觉它是切换的意思,每选择一个,它就切换一次,执行完毕后,并跳转到另一个。语法如下:
switch(表达式)
{
case 常量表达式:
语句系列1
break;
……
case 常量表达式:
语句系列n
break;
default:
语句系列n+1
}
在C#中switch与if语句的区别是:switch是依据具体值来判断,而if是根据范围来判断的。
循环
C#的循环语句也和VB类似,有for,while循环。不同的是,在C#中的for循环语句没有Next,while没有loop,但是在都while语句中也是先执行后进行判断的,这点和VB中的do loop while类似。
C#中还包含foreach循环语句,这是VB里没有的,语法与for循环语句类似,主要用于遍历集合中的元素。
跳转
跳转语句是用于无条件的转移控制。在C#中的跳转语句,除了包含VB中有的goto语句外,还包括break与continue语句。
break语句主要用于终止最近的封闭循环或它所在的Switch语句中。
continue语句主要用于跳过循环体中的其他部分,而强制程序提前进入循环的迭代部分,本质上是Break语句的补充。
goto语句在C#中的作用就和在VB中的作用类似,可以无条件的将控制转移到其他程序段。
四、总结
通过对比C#与VB控制结构的学习,发现语言其实都一样,只是语法不太一样而已,而且让我联想到了软件工程中的流程图,每种结构都可以画成一个流程图,把基本逻辑理清就可以了。因为敲得例子太少了,有些语句还没有真正体会到它的作用,希望在学习设计模式的时候能够更好的理解他们的作用。