鍵值對是指根據(jù)一個鍵值獲得對應(yīng)的一個值。鍵是指你存的值的編號,值是指你要存放的數(shù)據(jù)。以前我們講過
sql語句中的日期運(yùn)算。
在用C#做項(xiàng)目
做網(wǎng)站的時(shí)候,有時(shí)我們會遇到根據(jù)數(shù)據(jù)字段中的數(shù)字值對應(yīng)不同的文字描述的判斷。這時(shí)候我們可能會想到if語句來進(jìn)行判斷,但是如果數(shù)據(jù)字段中的數(shù)字值對應(yīng)不同的文字描述相應(yīng)的組如果有上十甚至上百種組合,這時(shí)如果用if語句來判斷未免會顯示很繁鎖。
那么像這種一列鍵值對數(shù)據(jù),如何通過數(shù)據(jù)的關(guān)鍵字快速查找相應(yīng)值呢?
一般遇到這個問題,用if語句來判斷適應(yīng)鍵值對組少的情況,要是鍵值對組超過三個以上,技術(shù)稍強(qiáng)的程序人就會想到用數(shù)組。
string[] Day = new string[] { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
for (int i = 1; i < 8; i++)
{
string strdaty=Day[Convert.ToInt32(DateTime.Now.AddDays(i).DayOfWeek.ToString("d"))].ToString();
}
如上述代碼就可以實(shí)現(xiàn)鍵值對,但是數(shù)組只能用在線性數(shù)據(jù)結(jié)構(gòu),就是說鍵的數(shù)字是從零順序增長的。
如果鍵的數(shù)字是雜亂無章的怎么辦呢?對,就用Hashtable。
public string reHastable(int OrderState)
{
string strOrderState = "";
Hashtable ht = new Hashtable();
ht.Add(12, "已取消");
ht.Add(13, "未到取號時(shí)間");
ht.Add(14, "可取號");
ht.Add(15, "爽約");
ht.Add(60, "取號成功");
strOrderState = ht[OrderState].ToString().Trim();
ht.Clear();
return strOrderState;
}
這個函數(shù)就實(shí)現(xiàn)了
C#根據(jù)不同的數(shù)字對應(yīng)不同的值。
除非注明,文章均為
長沙做網(wǎng)站公司原創(chuàng),轉(zhuǎn)載請以鏈接形式注明出處,謝謝。
本文地址:
http://www.aushadhiyoga.com/zwzzs/jianzhidui-171/