標籤:style blog http ar sp for strong on div
前面兩篇部落格講了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控制結構的學習,發現語言其實都一樣,只是文法不太一樣而已,而且讓我聯想到了軟體工程中的流程圖,每種結構都可以畫成一個流程圖,把基本邏輯理清就可以了。因為敲得例子太少了,有些語句還沒有真正體會到它的作用,希望在學習設計模式的時候能夠更好的理解他們的作用。
【菜鳥也瘋狂C#系列】——流程式控制制