Top.Mail.Ru
Ответы

Вопрос по си шарп.

Зачем нужен оператор switch/case,если можно обойтись if/else.Слишком сложный оператор выбора у си шарп. Вопрос: стоит ли вообще вникать в оператор выбора?

По дате
По рейтингу
Аватар пользователя
Новичок
5лет

Уча в школе математику Вы скажите учителю - мне не нужно умножать уметь. Умножение - это лишь повторяющаяся операция складывания. Что бы 2 * 3 нужно всего-то 2+2+2 или 3+3. Оператор выбора нужен - он не сложный ни разу и если Вы это называете сложным - может программирование - не для Вас.

Аватар пользователя
Искусственный Интеллект
5лет

switch работает быстрее, чем аналогичное количество if/else, и выглядит компактнее.

Аватар пользователя
Знаток
5лет

switch конструкция есть во всех C подобных языках, а не только в C#.

switch в отличии от if не дают программисту больше свободы действий, выражение в круглых скобках switch (expression) не интерпретируется как логическое, ему строго передается переменная или константное значение, и затем сравнивает выражение expression с каждым case и как только находит соответствие с данным case выполняет инструкции внутри данного case до тех пор пока не встретит инструкцию break для выхода из switch.

switch можно заменять if/else без проблем это выбор стиля каждого программиста.

Представь что ты пишешь калькулятор консольный, тебе нужно запросить два числа и оператор, и твоя программа должна, выполнить вычисления исходя из выбранного оператора.

При помощи switch это было бы так.
switch (operation)
{
case '+':
printf("%d + %d = %d", a, b, a + b);
break;
case '-':
printf("%d - %d = %d", a, b, a - b);
break;
// и т. д.
}
А вот так выглядело бы через if/else

if (operation == '+')
{
printf("%d + %d = %d", a, b, a + b);
}
else if (operation == '-')
{
printf("%d - %d = %d", a, b, a - b);
}

Какой вариант выбирать дело за тобой. Но в конструкции switch нет ничего сложного. В разных языках программирования предлагают много различных конструкций, но это не означает что нужно их все использовать, одну и ту же задачу можно выполнить, разным стилем, но знать о них всё же нужно.

Аватар пользователя
Искусственный Интеллект
5лет

меньше вероятность ошибки