Оператор break в Java

FacebooktwittertumblrFacebooktwittertumblr

Для понимания этой статьи желательно знать, что такое циклы, которые мы рассматривали в статье Что такое циклы в Java? И какие есть виды циклов?


Оператор break - это один из операторов перехода. Что такое оператор перехода?

Если Вы уже сталкивались с циклами, то Вы уже знаете, что все они, чаще всего, имеют одинаковые составляющие:

  • переменную итерации
  • условие
  • шаг итерации

For, while, do... while выполняют одинаковые функции. Можно сказать, что циклы достаточно простые и предсказуемые - они просто изменяют заданную переменную n-ное количество раз.

Но существуют ключевые слова, которые дают нам больше власти над циклом. Они позволяют нам:

  • завершить цикл раньше времени (оператор break)
  • проигнорировать часть кода (оператор continue)

В некоторых ситуациях они позволят Вам найти более практичное и элегантное решение поставленных задач. Давайте рассмотрим их подробнее.

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

Оператор break

С английского "break" переводится как "останавливать, прерывать". Как уже было сказано выше, оператор break позволяет прервать выполнение цикла в любой удобный для программиста момент - раньше, чем цикл "должен был бы" завершиться. Примерно вот так:

Keanu Reeves Neo GIF - Find & Share on GIPHY

 Синтаксис

Записывается оператор break  так:

Как видите, никаких скобочек, точечек или чего-нибудь еще - просто ключевое слово "break", а потом точка с запятой. Сказал как "остановил":)

Оператор break для выхода из цикла

В цикле (например,  в цикле while) он будет выглядеть так:

Итак, что тут происходит?

Тут у нас есть цикл while, который стандартно должен был бы выполняться пять раз. Проверим это. Вот код без оператора break:

в консоли мы бы получили:

1: цикл выполняется!
2: цикл выполняется!
3: цикл выполняется!
4: цикл выполняется!
5: цикл выполняется!

Но потом мы добавляем оператор if. Мы решили, что если переменная i станет равна переменной а, (т.е. станет равна трем) нам нужно остановить цикл. Таким образом, мы написали:

В итоге, в консоле мы получили:

1: цикл выполняется!
2: цикл выполняется!
3: цикл выполняется!

То-есть когда переменная i приобрела значение 3, цикл завершился. Точно так же оператор break будет работать и с любыми другими циклами  - for, do... while и так далее. просто вставьте эти строчки в нужный цикл:

Оператор break для выхода из цикла: вложенные циклы

Но тут может возникнуть вопрос - что будет, если циклов не один, а несколько? И как будет работать такой код:

Вы видите два цикла for. Во втором, "внутреннем" цикле, находится оператор break. Итак, когда выполнится условие - а именно когда а будет равен двум - остановится только второй цикл, или оба? Чтобы понять, давайте посмотрим, что покажет консоль.

Итак, в результате имеем:

Это первый цикл! Я выполняюсь 1 раз
            Это второй цикл! Я выполняюсь 1 раз
            Это второй цикл! Я выполняюсь 2 раз
Это первый цикл! Я выполняюсь 2 раз
            Это второй цикл! Я выполняюсь 1 раз
            Это второй цикл! Я выполняюсь 2 раз
Это первый цикл! Я выполняюсь 3 раз
            Это второй цикл! Я выполняюсь 1 раз
            Это второй цикл! Я выполняюсь 2 раз

Как видите, первый цикл выполняется 3 раза, как и должен был. При этом, второй цикл - каждый раз только два раза. А это значит, что оператор break прерывает только один цикл - тот, который его непосредственно вызывает.

Оператор break и оператор switch

И на последов, есть еще одно применение оператора break. Если Вы читали статью нашу статью про оператор switch:

то Вы могли уже встречать оператор break. Вот пример из той статьи:

Как Вы видите, каждый кейс заканчивается словом break:

Это еще одно применение оператора. Тут он выполняет ту же самую функцию - заставляет завершить цикл. Он как бы говорит "Ты нашел то, что искал - зачем работать дальше?".

Заключение

Поздравляем - теперь Вы знаете, как работает оператор break!

Итак, пройдемся по основам пунктам:

  • break вызывается лаконично - просто break и точка с запятой;
  • break работает одинаково для всех циклов - while,  for,  do...while и др.;
  • break прерывает выполнение только одного цикла - того, который его непосредственно вызывает;
  • break применяется в операторе switch.

Понравилась наша статья? Есть возможность записаться к нам на курсы. Детальнее у нас на сайте.

FacebooktwittertumblrFacebooktwittertumblr

FacebooktwittertumblrFacebooktwittertumblr
Самоучители--узнать детальнее--