我創建了一些代碼,如下所示,用于宣告陣列的值。但是,我知道還有另一種方法可以使用 if 陳述句來執行此操作,您也可以向我展示這種方式嗎?N、Q、L、R 和 K 是有效代碼,“默認”代碼是給出無效代碼(除列出的字母外的任何字母)時。
已將代碼放在下面 - 如果需要更多資訊,請告訴我:
public void setInfo(string c)
{
switch (c)
{
case "K":
event_code = event_codes[0];
break;
case "L":
event_code = event_codes[1];
break;
case "R":
event_code = event_codes[2];
break;
case "Q":
event_code = event_codes[3];
break;
case "N":
event_code = event_codes[4];
break;
default:
event_code = "I";
break;
}
}
uj5u.com熱心網友回復:
我不會給你代碼,因為最好理解使用switch
orif
陳述句的程序。
一條switch
陳述句只是告訴編譯器將提供的引數值與每個陳述句值進行比較,如果為真,則在該引數和下一個關鍵字case
之間運行代碼。break
在停靠點的break
進一步處理。switch
因此switch
可以認為是:
switch(s)
---> 是引數s
case "R":
---> 等于“R”
如果然后運行
event_code = event_codes[2];
default
--->s
不等于任何case
條件所以運行
event_code = "I";
子句必須回傳邏輯結果,if
即陳述句必須為真或假。
一個if
結構將是:
if (<some logical test>)
{ // test is true
<run this code>
}
else
{ //test is false
<run this code>
}
switch
可以用多個s替換if
,但正如您所見if
,每個s 都需要一個case
。
不要忘記default
子句 - 這是在所有測驗條件都失敗時運行的代碼,并且您需要通過if
在通過邏輯測驗后不處理更多子句來復制開關的行為并運行代碼該test is true
部分。
uj5u.com熱心網友回復:
對于這樣的事情,我喜歡使用哈希圖,這樣可以更輕松地更新值串列,而不是在每次有新代碼時添加更多 if 陳述句。這是一個簡單的例子。
static void Main(string[] args)
{
// use the set_event_code function to set the event code
String event_code = "A";
event_code = set_event_code(event_code);
// output the event code
Console.WriteLine("Event Code: " event_code);
}
// create a function that sets the value of "event_code"
public static string set_event_code(String event_code)
{
// create a hashmap of event_codes and the event_code passed will be the key to the value being set
Dictionary<string, string> event_codes = new Dictionary<string, string>();
event_codes.Add("A", "event_code_1");
event_codes.Add("B", "event_code_2");
event_codes.Add("C", "event_code_3");
event_codes.Add("D", "event_code_4");
event_codes.Add("E", "event_code_5");
// set the value of "event_code" to the value of the key passed, if the key does not exist, set the value to "event_code_0"
if (event_codes.ContainsKey(event_code))
{
event_code = event_codes[event_code];
}
else
{
event_code = "event_code_0";
}
return event_code;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/527307.html
上一篇:將資料從一個表拆分到另一個表