1、C#之流程控制語句:計算機程序執行的控制流程由三種基本的控制結構控制,即順序結構,選擇結構,循環結構。
1) 順序結構:從上到下,按照書寫順序執行每一條語句,不會發生跳躍。
代碼段1; // 先執行代碼段1 代碼段2; // 接着執行代碼段2 ...
2)選擇結構:對給定的條件進行判斷,再根據判斷結果來決定執行哪一段代碼。
if 結構:
if( 條件 )
{
條件成立執行語句;
}
if-else結構:
if(條件) {
條件成立執行;
}
else { 條件不成立執行; }
if else-if:
if(條件1)
{
條件1成立執行代碼段;
}
else if (條件2) { 條件2成立執行代碼段; } else { 條件都不成立執行代碼段; }
switch-case:
switch( 要判斷的變量或者表達式 )
{
case 值1 : 執行語句1; break; // switch的穿透性--不加break case 值2 : 執行語句2; break; default: 默認執行語句; break; }
當要判斷的變量或者表達式與其中一個case語句中的值相符時,就執行此case語句后面的語句,除非遇到break;語句跳出switch語句為止。如果要判斷的變量或者表達式與所有case語句的值都不相符,就執行default語句中的語句並跳出switch語句。
4)循環結構:在給定條件成立的情況下,反復執行某一段代碼。
while:
while( 循環條件 )
{
循環體;
}
while 中的循環條件成立時就會執行大括號里面的程序;
continue 結束當前的循環,進入到下一個循環;
break 終止整個循環,不再執行大括號里面的程序,進入下一步程序;
do-while:
do{
循環體;
}
while ( 循環條件 );
do-while 首先執行do中的循環體,執行完成后,去判斷循環條件是否成立,如果成立,則繼續回到do中執行循環體,如果不成立,則跳出do-while循環。
特點:先執行,再判斷,最少執行一遍循環體。
for:
for(int i = 0; i< 10; i++)
{
要循環執行的內容 ;
}
int i = 0; 是初始條件 i < 10是循環條件 i++ 是技數狀態改變
跟while循環一樣,在循環體內使用 continue; 結束當前的循環,進入到下一個循環;
循環體內使用 break 終止整個循環,不再循環體中的程序;for一般在有明確循環次數的程序上使用。
循環嵌套:
for( int i =0; i < 10;i++)
{
for(int j =0; j < 10;j++) { ... } }
foreach:C# 也支持 foreach 循環,使用foreach可以迭代數組或者一個集合對象。
foreach( var item in list)
{
...
}
foreach在處理集合和數組相對於for存在以下幾個優勢:
- foreach語句簡潔;
- 效率比for要高(C#是強類型檢查,for循環對於數組訪問的時候,要對索引的有效值進行檢查);
- 不用關心數組的起始索引是幾(因為有很多開發者是從其他語言轉到C#的,有些語言的起始索引可能是1或者是0);
- 處理多維數組(不包括鋸齒數組)更加的方便。
2、try-catch異常捕獲
try{
可能會出現異常的代碼;
} catch (Exception ex) // ex-可能出現異常的異常信息
{ // 出現異常后要執行的代碼; } finally{ 無論是否出現異常都會執行的代碼; }
執行過程:當try中的代碼出現異常的時候,出現異常的這行代碼后面的代碼不會被執行。 跳到catch中執行catch的代碼。
