C# switch case 元组
在C#中,switch语句不直接支持作用于元组的比较。但是,你可以通过"switch"表达式(C# 8.0及更高版本)或者使用一些技巧来处理元组。
以下是一个使用"switch"表达式处理元组的例子:
(int, int) tuple = (1, 2);
// 使用switch表达式处理元组
var result = tuple switch
{
(0, _) => "First value is zero",
(_, 0) => "Second value is zero",
(1, 2) => "Both values are one and two",
(3, var y) => $"First value is three, second is {y}",
_ => "No match"
};
Console.WriteLine(result);
在这个例子中,我们定义了一个元组(1, 2),然后使用switch表达式来匹配并处理不同的情况。
如果你使用的是C# 7.0或更低版本,你可以使用if-else if-else结构来处理元组:
(int, int) tuple = (1, 2);
if (tuple == (0, 0))
{
Console.WriteLine("Both values are zero");
}
else if (tuple == (0, 1))
{
Console.WriteLine("First value is zero, second value is one");
}
else if (tuple == (1, 0))
{
Console.WriteLine("First value is one, second value is zero");
}
else if (tuple == (1, 2))
{
Console.WriteLine("Both values are one and two");
}
else
{
Console.WriteLine("No match");
}
在这个例子中,我们使用了元组的相等性来进行比较。这种方法在C# 7.0及更低版本中是唯一的选择。
提示:AI自动生成,仅供参考
漫思
浙公网安备 33010602011771号