我正在处理遗留的C#代码,并且看到了两种switch
语句样式。我来自Python背景,所以这两个switch
使用之间差异的细微差别使我不知道
示例#1
public string SwitchExample1(int value)
{
switch(value)
{
case 1: return "a";
case 2: return "b";
default: return "c";
}
}
示例#2
public string SwitchExample2(int value)
{
switch(value)
{
case 1: return "a";
case 2: return "b";
}
return "c";
}
在功能上它们是相同的 - 它们都返回" c"何时value != 1 && value != 2
这只是一种风格差异吗?或者是否有最佳实践要求您使用一个而不是另一个?
答案 0 :(得分:3)
没有实际差异。两种格式的行为都与:
相同if(value==1)
return "a";
else if(value==2)
return "b";
else
return "c";
强烈建议使用default
的第一种方法。这是遵循风格指南的那个,这将使代码的意图更加清晰。
答案 1 :(得分:-2)
大多数风格指南都说应该使用'默认'语句。