Я создавал метод C # в Visual Studio, который содержал только оператор switch, в котором каждый случай возвращал значение. По личной привычке я помещаю что-то похожее на следующий код:
private string SwitchMethod(int num)
{
switch (num)
{
case 0:
return "result 1";
case 1:
return "result 2";
case 2:
return "result 3";
}
return "no result";
}
Мой вопрос таков: какой код будет иметь лучшую производительность? Код выше или ниже или одинаковые? И почему?
Я бы предположил, что из-за оптимизации компилятора ... они могут быть такими же ... но я действительно не знаю.
private string SwitchMethod(int num)
{
switch (num)
{
case 0:
return "result 1";
case 1:
return "result 2";
case 2:
return "result 3";
default:
return "no result";
}
}
РЕДАКЦИЯ: Похоже, я должен быть более конкретным: при компиляции ... будет ли менее эффективный код сгенерирован одним или другим?
Я понимаю, что разница в производительности может быть незначительной ... Мне просто очень любопытно.