【发布时间】:2017-10-26 19:25:51
【问题描述】:
我想在我的代码中使用类似 if 的 switch 但我不知道如何使用 && 以防万一! 这是我的代码
string a;
a = System.Convert.ToString(textBox1.Text);
if (a.Contains('h') && a.Contains('s'))
{
this.BackColor=Color.Red;
}
else if (a.Contains('r') && a.Contains('z'))
{
this.BackColor=Color.Black;
}
else if (a.Contains('a') && a.Contains('b'))
{
this.BackColor = Color.Pink;
}
【问题讨论】:
-
顺便说一句,
textBox1.Text已经是一个字符串了。不要费心打电话给Convert.ToString()。没必要。 -
嘘,@ed,你可以用c# 7中的模式匹配来做到这一点docs.microsoft.com/en-us/dotnet/csharp/whats-new/…
-
我一定很困惑——我不知道模式匹配如何允许 OP 正在寻找的东西。
-
Sajad,你得到的是相当干净、可读的代码。我认为没有必要更改它。
-
@Will 哦,废话。我刚看到
when。我认为模式匹配纯粹是他们添加到switch的整个类型检查。甚至不知道你可以在这些个月后添加 when 表达式!
标签: c# if-statement switch-statement case