关于Switch的问题,求大神解决。
public static List<Book> GetbookList() {//得到所有字母为A的城市名称,ID,PY,简写,
List<Book> list_A = new List<Book>();
List<Book> list_B = new List<Book>();
List<Book> list_C = new List<Book>();
List<Book> list_D = new List<Book>();
List<Book> list_E = new List<Book>();
List<Book> list_F = new List<Book>();
List<Book> list_G = new List<Book>();
List<Book> list_H = new List<Book>();
List<Book> list_I = new List<Book>();
List<Book> list_J = new List<Book>();
List<Book> list_K = new List<Book>();
List<Book> list_L = new List<Book>();
List<Book> list_M = new List<Book>();
List<Book> list_N = new List<Book>();
List<Book> list_O = new List<Book>();
List<Book> list_P = new List<Book>();
List<Book> list_Q = new List<Book>();
List<Book> list_R = new List<Book>();
List<Book> list_S = new List<Book>();
List<Book> list_T = new List<Book>();
List<Book> list_U = new List<Book>();
List<Book> list_V = new List<Book>();
List<Book> list_X = new List<Book>();
List<Book> list_Y = new List<Book>();
List<Book> list_Z = new List<Book>();
List<Book> list_W = new List<Book>();
DataTable dr = DBHELP.SelectTable(@"select fid,Id,Name,CHName,Url,BriefName from dbo.D_Region_Dictionary
where status=4 and isbroad=0 and depth>1 and depth<=3
order by depth");
//循环放入list集合中
foreach (DataRow item in dr.Rows)
{
Book bk = new Book();
bk.ID = Convert.ToInt32(item["ID"]);
bk.BriefName = item["BriefName"].ToString();
bk.CHName = item["CHName"].ToString();
//判断如果城市拼音首字母为A的,进行显示。
switch (bk.CHName.Substring(0, 1))
{
case "a":
list_A.Add(bk);
break;
case "b":
list_B.Add(bk);
break;
case "c":
list_C.Add(bk);
break;
case "d":
list_D.Add(bk);
break;
case "e":
list_E.Add(bk);
break;
case "f":
list_F.Add(bk);
break;
case "g":
list_G.Add(bk);
break;
case "h":
list_H.Add(bk);
break;
case "i":
list_I.Add(bk);
break;
case "j":
list_J.Add(bk);
break;
case "k":
list_K.Add(bk);
break;
case "l":
list_L.Add(bk);
break;
case "m":
list_M.Add(bk);
break;
case "n":
list_N.Add(bk);
break;
case "o":
list_O.Add(bk);
break;
case "p":
list_P.Add(bk);
break;
case "q":
list_Q.Add(bk);
break;
case "r":
list_R.Add(bk);
break;
case "s":
list_S.Add(bk);
break;
case "t":
list_T.Add(bk);
break;
case "u":
list_U.Add(bk);
break;
case "v":
list_V.Add(bk);
break;
case "w":
list_W.Add(bk);
break;
case "x":
list_X.Add(bk);
break;
case "y":
list_Y.Add(bk);
break;
case "z":
list_Z.Add(bk);
break;
default:
break;
}
}
return null; --------------------编程问答-------------------- 我要怎么得到switch 选中的值,然后进行返回呢? --------------------编程问答-------------------- 求大神解决哦,大神在哪里。 --------------------编程问答-------------------- 在哪里呀,在哪里。 0 0来人哦。 --------------------编程问答-------------------- 没明白... --------------------编程问答-------------------- case 中不是有了么 --------------------编程问答--------------------
我想得到 switch选中的值。然后返回某个list_xx.add(bk); --------------------编程问答-------------------- 看了一下你的 代码,是在比较 雷人啊,
参数只能 返回一个。
结果你创建了 26个 list
所以 唯一的方法,你要飞的用 26个list存储 那你只能用
Dictionary<int,List<Book>> 或 Dictionary<string,List<Book>> 作为返回类型了
Dictionary<int,List<Book>> int 可以为 book.ID;
Dictionary<string,List<Book>> string 可以为 book.Name;
随你了
你要去不返回只能用这个 方法。
最后 你在 循环体里 也就是 dictionary.Add(T , list) ;
这个 能解决你想要的。
--------------------编程问答-------------------- 还好只是26个字母,老外太伟大了,英文又一次完胜中文啊。 --------------------编程问答-------------------- 我也不想的。 - -循环语句我没写出来,我要把A-Z中国的所有省市显示出来,然后进行分类显示。但是我不能操作jquery,只能在后台去控制,而且我们这是用模板生成页面的。 --------------------编程问答-------------------- 用Dictionary<string,List<Book>>=new Dictionary<string,List<Book>>();
string 存储城市首字母,List存储城市Name --------------------编程问答-------------------- 你要的 代码我给你啦 ,你没有看吗 还是怎么 Dictionary<T,V> 不会用还是怎么。
你要返回列表还要那么多个 LIST 没有办法 你的代码只能用 字典带,要不就换 方式实现了。 --------------------编程问答--------------------
补充:.NET技术 , C#