Как выйти из if
Перейти к содержимому

Как выйти из if

  • автор:

Как выйти из if-блока?

Можно ли это как-то сократить? Например, если бы можно было выходить из блока if , можно было бы не писать else . Но вроде бы оператор break такого не позволяет. Подскажите, что можно сделать?

Отслеживать
user256824
задан 28 ноя 2019 в 18:50
Aggravator Aggravator
273 5 5 серебряных знаков 26 26 бронзовых знаков

Можно выходить почти из любого места программы, я использую для такого случая goto ! В метку вынес проверку переменной которая заполняется false в случаи ошибки и true удачи, вместо кучи return и блоков else.

28 ноя 2019 в 19:02
Я думаю оператор goto не то чтобы устарел, но является признаком плохого тона)
28 ноя 2019 в 19:17

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Вынесите ваш блок проверок в отдельную функцию и используйте return

Или поднимайте исключения

Отслеживать
ответ дан 28 ноя 2019 в 19:09
Anton Shchyrov Anton Shchyrov
33.1k 2 2 золотых знака 33 33 серебряных знака 67 67 бронзовых знаков

В чем смысл тратить ресурсы на инициализацию дополнительной функции для возврата результата существующей функции ?) если не учитывать относительно масштабной обработки результата перед его возвратом с учетом повторений в нескольких местах (чего в вопросе не было)

28 ноя 2019 в 19:14

@noname2019 в повышении читабельности кода. Потери производительности при вызове ничтожна по сравнению со сложностью поддержки этого спагетти-кода

28 ноя 2019 в 19:17
В чем читабельность то ? в увеличении и усложнении кода ?
28 ноя 2019 в 19:18
@noname2019 в структурировании и разделении программы на логические блоки
28 ноя 2019 в 19:20

против функций возражений не имею, но исключения то тут каким боком, автор же не заявляет, что это проверки ошибок каких-либо.

28 ноя 2019 в 22:30

Не знаю, как отнесутся к этому адепты правильного кода на php, но можно использовать . цикл:

foreach([1] as $_not_used) < if(условие) < . if(условие) < break; >. > if($a==4) < break; >> 

Кроме того, если условия подходящие, возможно использование конструкции switch. А так же вложенных конструкций циклов и switch с указанием оператору break количества уровней вложенности, из которого выходить.

Выход из внутреннего if

Author24 — интернет-сервис помощи студентам

Выход из внутреннего ЦИКЛА
Есть 2 цикла for, один в другом. Во внутреннем цикле есть конструкция if. Если в if выполняется.

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

Оператор break даёт нам выход из обоих циклов или только из внутреннего
Господа, проконсультируйте в одном вопросе! Написав кучу программ, в голове образовался полный.

Угадай, где выход! (Поиск листа бинарного дерева, содержащего выход из лабиринта)
Никогда раньше не решал задачи на деревья, но вот решил начать. Самая большая проблема в том, что я.

Как выйти из if java

Во время выполнения программы на Java выход из конструкции if else осуществляется автоматически, как только код внутри тела конструкции будет выполнен.

int a = 15; int b = 10; // создадим конструкцию if else для проверки условия (a > b) if (a > b)  System.out.println("Мы находимся внутри if else, так как условие (a > b) верно"); > System.out.println("Мы вышли из if else, так как код внутри конструкции был выполнен") 

Вывод в консоли будет следующим:

C++ Выход из if в цикле

Как принудительно выйти из if, чтобы программа перешла к выполнению метод1.

goto не уместен.

Дополнен 11 лет назад
Ложная тревога.
Простите за беспокойство.
Уже голова ни какая, я протупил.
Лучший ответ

Автору может стоит почитать про условия? с них нету выхода! они либо выполняются либо не выполняются!
например:
int a = 5;
int b = 5;
if(a == b)<
выполнится если a = b
>else<
выполнится если a не равно b
>

Остальные ответы

Оператор break. Он позволит завершиться циклу if и программа продолжится с выполнения как раз строки «Метод1».

Миша ФирсовПрофи (650) 11 лет назад
Тогда вообще выйдет из цикла, а мне нужно остаться в нем
Миша Фирсов Профи (650) break вообще из цикла выкидывает

При чем тут цикл вообще? Тебе нужно выйти из if, цикл побоку. Итак:
if() <
.
if(!условие_выхода) <
.
>
>
метод1
не?

Миша ФирсовПрофи (650) 11 лет назад

Мне нужно принудительно выйти из if и остаться в цикле. break выкидывает из цикла, как еще я не знаю, прошу помощи

Капитан Гугл Искусственный Интеллект (146193) А где у меня break?
и скобок после if
вроде никак, надо полностью завершить код в скобках.
Внутри if поставь еще один if.
Миша ФирсовПрофи (650) 11 лет назад
И что написать во внутреннем if
Krab Bark Искусственный Интеллект (191662) То, что не должно выполняться при выходе из внешнего if.
Похожие вопросы
Ваш браузер устарел

Мы постоянно добавляем новый функционал в основной интерфейс проекта. К сожалению, старые браузеры не в состоянии качественно работать с современными программными продуктами. Для корректной работы используйте последние версии браузеров Chrome, Mozilla Firefox, Opera, Microsoft Edge или установите браузер Atom.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *