關於C#的流程控制,與其它語言基本相同,包括:
選擇控制:if、else、switch、case
循環控制:while、do、for、foreach
跳轉語句:break、continue
異常處理:try、catch、finally
咱們看到在循環控制中多了一個foreach,在下面的過程當中咱們詳細的瞭解.
選擇控制:
咱們作個簡單的用戶驗證,以下:
public static void
Main()
{
Console.WriteLine("請輸入您的姓名");
string username=Console.ReadLine();
if (username != "")//格式:if(條件)
{
//知足條件時運行的代碼
Console.WriteLine("偉大的{0}歡迎您進入矩陣!", username);
}
else//不知足
{
//不知足條件時運行的代碼
Console.WriteLine("您沒有輸入任何內容,請離開!");
}
}
咱們發現,只要輸入一個用戶,就能夠登陸系統,那麼咱們來作下限制,讓指定的人登陸,因而:
public static void
Main()
{
Console.WriteLine("請輸入您的姓名");
string username=Console.ReadLine();
if (username == "jianle")//格式:if(條件)
{
//知足條件時運行的代碼
Console.WriteLine("偉大的{0}歡迎您進入矩陣!", username);
}
else if (username == "boss")
{
//第二個條件
Console.WriteLine("偉大的{0}歡迎您進入矩陣!", username);
}
else
{
//不知足條件時運行的代碼
Console.WriteLine("您沒有輸入任何內容,請離開!");
}
}
switch選擇控制
有一天,咱們須要能讓更多的人登陸矩陣,那麼就能夠這樣實現:
public static void
Main()
{
Console.WriteLine("請輸入您的姓名");
string username=Console.ReadLine();
switch (username)
{
case "jianle":
Console.WriteLine("偉大的{0}主人歡迎您進入矩陣!", username);
break;
case "boss":
Console.WriteLine("偉大的{0}老大歡迎您進入矩陣!", username);
break;
case "cctv":
Console.WriteLine("偉大的{0}先生歡迎您進入矩陣!", username);
break;
case "gril":
Console.WriteLine("偉大的{0}女士歡迎您進入矩陣!", username);
break;
default :
Console.WriteLine("您輸入有誤,請離開.");
break;
}
}
循環控制:
又發現弊端了,某一天偉大boss的boss同志不當心少打了個s 發現他要退出系統重起系統才能夠進入,因而有了下面解決方案:
public static void
Main()
{
bool bz = true;//這是一個標誌
while (bz)//判斷標誌是否爲true 若是是的話就繼續 不然的話就退出循環.
{
Console.WriteLine("請輸入您的姓名");
string username = Console.ReadLine();
switch (username)
{
case "jianle":
bz = false;
Console.WriteLine("偉大的{0}主人歡迎您進入矩陣!", username);
break;
case "boss":
bz = false;
Console.WriteLine("偉大的{0}老大歡迎您進入矩陣!", username);
break;
case "cctv":
bz = false;
Console.WriteLine("偉大的{0}先生歡迎您進入矩陣!", username);
break;
case "gril":
bz = false;
Console.WriteLine("偉大的{0}女士歡迎您進入矩陣!", username);
break;
default:
Console.WriteLine("您輸入有誤,請從新輸入.");
break;
}
}
從上邊例子咱們能夠看到,while是死循環,語法參照例中. do while與while的區別爲先執行循環再判斷條件.經常使用的爲while循環.
好了,咱們能夠再也不去想這個關於登陸矩陣的問題啦,繼續咱們循環的學習.
for循環
在這裏咱們的例子作的是個遍歷一個string數組的代碼.
public
static
void
Main()
{
Console.WriteLine("輸入三個數用,分割如:120,11,3");
string stra = Console.ReadLine();
string[] strb = stra.Split(',');//字符串的Split方法,能夠把字符串分割,返回一個數組.
for (int i = 0; i < strb.Length; i++)//這是個for循環 strb.Length 爲數組strb的元素叫數.
{
Console.WriteLine("您輸入的第{0}個數爲{1}",i,strb[i]);
}
}
foreach循環
foreach(數據類型 變量名 in 數組或集合 )
{
}
其中數據類型與數組或集合的類型一致,還能夠是小於數組和集合的類型.
public static void
Main()
{
Console.WriteLine("輸入三個數用,分割如:120,11,3");
string stra = Console.ReadLine();
string[] strb = stra.Split(',');//字符串的Split方法,能夠把字符串分割,返回一個數組.
foreach(string a in strb)
{
Console.WriteLine(a);
}
}
再對於數組或集合的遍歷時,建議使用foreach.
break與continue
break 語句可用於退出循環
continue 語句可用於跳過當前循環並開始下一循環
異常處理try
try語句提供了一種機制來捕捉塊執行過程當中發生的異常,如下是它的三種的形式:
try-catch
try-finally
try-catch-finally
public static void
Main()
{
try
{
Console.WriteLine("請輸入一個整數:");
int inta = int.Parse(Console.ReadLine());
Console.WriteLine("輸入正確");
}
catch
{
Console.WriteLine("輸入不正確");
}
finally
{
Console.WriteLine("無論對不對都要輸出我!");
}
關於異常,其實還有不少東西,咱們這裏只是簡單提了一些基本的知識點,若是須要更詳細的應用,請查閱MSDN!