在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自动生成,仅供参考 标签:case,Console,tuple,C#,value,元组,switch,WriteLine From: https://www.cnblogs.com/sexintercourse/p/18648530