【发布时间】:2019-03-12 17:38:42
【问题描述】:
我正在检查变量用户名是否包含“ali”,这是 switch case 中的字符串值,但我的老师早些时候告诉我,您只能检查数据类型 char 和 int 但它与字符串一起工作正常,所以我很困惑检查switch 中的字符串数据类型是不是好习惯?
string userName = "Ali";//the variable i want to check
switch(userName)
{
case "Ali"://value i want to check
Console.WriteLine("found");
break;
default:
Console.WriteLine("not found");
break;
}
【问题讨论】:
-
不清楚问题是什么。如您所述,您可以在 C# 的 switch 语句中使用字符串。
-
是时候找一所新学校了。 FWIW,你不能在 C 或 C++ 中做到这一点。可能您的讲师混淆了他/她的语言。
-
我的问题是我正在检查变量用户名是否包含“ali”,这是 switch case 中的字符串值,但我的老师早些时候告诉我,您只能检查数据类型 char 和 int,但它工作正常使用字符串,所以我很困惑在 switch 中检查字符串数据类型是否是好习惯?
-
是的,这在技术上没有任何问题,尽管您无法像直接比较两个字符串那样控制文化或区分大小写。也许您的老师建议您应该使用常量,但他们仍然认为不能这样做是错误的。请他们澄清。
-
明天是我的论文,我很担心她是否会接受我的观点,顺便谢谢大家。
标签: c# switch-statement