为了提高效率,是否有一种类似于switch语句的方法可以用于列表?
例如:
switch (List)
{
case contains("admin"):
permission = x;
break;
case contains("user"):
tabControl1.TabPages.Remove(tab_Admin);
break;
case contains("user2"):
tabControl1.TabPages.Remove(tab_Admin);
tabControl1.TabPages.Remove(tab_Dates);
break;
case contains("guest"):
tabControl1.TabPages.Remove(tab_Admin);
tabControl1.TabPages.Remove(tab_Dates);
tabControl1.TabPages.Remove(tab_Data);
break;
}
而不是每个包含一个if包含
最佳答案
您可以这样尝试:
if (List.Contains(value))
{
switch (value)
{
case "admin": permission = x;
break;
case "user": tabControl1.TabPages.Remove(tab_Admin);
break;
case "user2": tabControl1.TabPages.Remove(tab_Admin);
tabControl1.TabPages.Remove(tab_Dates);
break;
case "guest": tabControl1.TabPages.Remove(tab_Admin);
tabControl1.TabPages.Remove(tab_Dates);
tabControl1.TabPages.Remove(tab_Data);
break;
}
}
问题是List.Contains method返回一个布尔值,因此您不能像这样使用它。