繼續補習,這篇文章主要補習下控制流程的相關語句及關鍵字,在c#中用於控制流程的語句有:if、while、dowhile、switch、for、foreach、goto、break、continue,大多數都是我們日常開發所使用的,而這篇主要還是補習那些遺漏的知識。
1、迴圈語句:for、foreach
2、switch中的break、return和goto
一、迴圈語句:for、foreach
迴圈語句是所有語言中都很常見的了,而下面記錄的分別是乙個我不曾使用過的for迴圈和使用foreach我有時候會犯的乙個錯誤:
1、乙個我不曾使用過的for迴圈,一般常規的定義for迴圈**如下:
for(int i=0;i久而久之的使用過程中,我就習慣性的認為for迴圈當中只能包含乙個引數,實則不然,for迴圈其實可以包含多個引數,並且可以實現一些特殊的判斷,只需要在多個引數之間加上「,」分隔,如下**:
for(int i=0,j=10;((i>5)&&(j<5));i++,j--)
當然中間用於邏輯判斷的也可以是或、異或,或者更複雜的判斷,雖然這種寫法不常見(至少我沒用到,或者我功力還太弱),但是在某些情況下還是應該比較有用的。
2、使用foreach我有時候會犯的乙個錯誤,這個錯誤也是比較常見的,如下**:
datarow row=new datarow();
foreach(var item in datatable.rows)
這個是個很典型的案例,就是foreach不允許在迴圈體內修改變數,如上面**中的row,如果按照以上**看一眼就能發現問題,但是實際開發過程中,有時候foreach中會有許多其他邏輯**,往往會把這個忽略掉,所以需要謹記。
二、switch中的break、return和goto
用過switch的朋友都知道,switch是用來替換多if語句情況下的乙個解決方法,同時在switch中的case子句下必須編寫break關鍵字用來跳出,否則會出錯,當然解決方法也不止這乙個,c#中還有2個關鍵字可以解決這個問題——return和goto,下面就說下這2個語句在switch中使用需要注意的情況:
1、return,return主要是用於返回,如果在switch中case子句裡使用return來代替break後,則switch後面的所有**都不會執行,將直接跳轉到方法的結束,所以使用起來需要慎之又慎。
2、goto,goto的話是乙個很少見關鍵字,因為其使用會導致整個程式的錯亂、不可讀性甚至異常,同時c#語法中還規定了其不允許使用goto從乙個方法跳轉到另外乙個方法,所以一般來說能用盡量少用,而goto在switch中使用有個比較特色之處,如下**:
switch(a)
對於在switch中需要無論哪種情況都走一下default的時候,可以使用goto語句來跳轉到default,實現了一簡單的**復用。 SQL server 控制流語句
控制流語句 序號語句用法1 begin end 用於將多個t sql語句組合為乙個程式塊 2if else 有條件的執行語句 3case when then 結果表示式 else 結果表示式 可以進行多個分支的選擇 4while 通過布林表示式來設定乙個條件,當這個條件成立時,重複執行乙個語句或語句...
T SQL 控制流語句
go 關鍵字可以對批量處理的sqlserver 進行分批次處理 declare i int set i 1 go 分批了 print i i在這個批里未定義 輸出 訊息 137,級別 15,狀態 2,第 1 行 必須宣告標量變數 i 控制流語句不能跨批執行declare iint set i 1 i...
6 控制流語句 條件控制if
python條件語句是通過一條或多條語句的執行結果 true或者false 來決定執行的 塊。可以通過下圖來簡單了解條件語句的執行過程 python程式語言指定任何非0和非空 null 值為true,0 或者 null為false。python 程式設計中 if 語句用於控制程式的執行,基本形式為 ...