代码检查:提取公共代码
此检查报告了 if 和 switch 语句的不同分支中等效的代码。 相应的快速修复可帮助您自动提取重复的代码,并将其放在分支之前或之后。
如果等效代码是有意的,合并公共语句可以使您的代码更简洁且更易于维护。 然而,此检查也可以帮助捕捉错误,因为分支结构中的等效代码通常是复制粘贴的结果。 因此,当您在代码中看到此问题时,请首先检查等效代码是否是有意的。
void GreetCustomer(string name, bool known)
{
var sb = new StringBuilder();
if (known)
{
sb.AppendLine($"Hello, {name}!");
sb.AppendLine("Welcome back!");
}
else
{
sb.AppendLine($"Hello, {name}!");
sb.AppendLine("Welcome!");
}
Console.WriteLine(sb.ToString());
}
void GreetCustomer(string name, bool known)
{
var sb = new StringBuilder();
sb.AppendLine($"Hello, {name}!");
if (known)
{
sb.AppendLine("Welcome back!");
}
else
{
sb.AppendLine("Welcome!");
}
Console.WriteLine(sb.ToString());
}
最后修改日期: 2025年 9月 27日