Continue java что значит

Что такое ключевое слово «continue» и как оно работает в Java?

Я впервые увидел это ключевое слово, и мне было интересно, может ли кто-нибудь объяснить мне, что оно делает.

  • Какое continue ключевое слово?
  • Как это работает?
  • Когда это используется?

continue Заявление без этикетки будет переоформить от состояния самих внутреннего while или do петли, и из выражения обновления самого внутреннего for цикла. Он часто используется для раннего завершения обработки цикла и, таким образом, для избежания глубоко вложенных if операторов. В следующем примере continue будет получена следующая строка без обработки следующего оператора в цикле.

С меткой continue будет повторно выполняться из цикла с соответствующей меткой, а не из самого внутреннего цикла. Это может быть использовано для избежания глубоко вложенных циклов или просто для ясности.

Иногда continue также используется в качестве заполнителя, чтобы сделать тело пустого цикла более понятным.

То же утверждение без метки также существует в C и C ++. Эквивалент в Perl есть next .

Этот тип потока управления не рекомендуется, но если вы решите, вы также можете использовать его continue для имитации ограниченной формы goto . В следующем примере continue будет повторно выполнен пустой for (;;) цикл.

continue вроде как goto . Вы знакомы с break ? Легче думать о них в отличие

Читайте также:  Парентал адвизори что значит

break завершает цикл (переходит к коду под ним).

continue завершает остальную часть обработки кода в цикле для текущей итерации, но продолжает цикл.

Давайте посмотрим на пример:

Это позволит получить сумму только нечетных чисел от 1 до 100.

Если вы думаете о теле цикла как о подпрограмме, continue это вроде как return . Такое же ключевое слово существует в C и служит для той же цели. Вот надуманный пример:

Это распечатает только нечетные числа.

Как правило, я вижу continue (и break ) как предупреждение о том, что код может использовать некоторый рефакторинг, особенно если объявление цикла while or for не сразу видно. То же самое верно для return середины метода, но по несколько иной причине.

Как уже говорили другие, continue переходит к следующей итерации цикла, а break выходит из замкнутого цикла.

Это могут быть временные бомбы обслуживания, потому что нет прямой связи между continue / break и циклом, который он продолжает / прерывает, кроме контекста; добавьте внутренний цикл или переместите «кишки» цикла в отдельный метод, и вы получите скрытый эффект continue / break failing.

ИМХО, лучше использовать их в качестве крайней меры, а затем убедиться, что их использование тесно сгруппировано в начале или конце цикла, чтобы следующий разработчик мог видеть «границы» цикла на одном экране ,

continue , break и return (кроме «Единого истинного возврата» в конце вашего метода) все попадают в общую категорию «скрытых GOTO». Они помещают управление циклами и функциями в неожиданные места, что в конечном итоге приводит к ошибкам.

«продолжить» в Java означает перейти к концу текущего цикла, означает: если компилятор увидит продолжение в цикле, он перейдет к следующей итерации

Пример: это код для печати нечетных чисел от 1 до 10

компилятор будет игнорировать код печати всякий раз, когда видит, что он продолжает переходить к следующей итерации

Как уже упоминалось, continue будет пропущена обработка кода ниже и до конца цикла. Затем вы переходите к условию цикла и запускаете следующую итерацию, если это условие все еще выполняется (или если есть флаг, к условию обозначенного цикла).

Следует подчеркнуть, что в случае do — while вы перешли к условию внизу после a continue , а не в начале цикла.

Вот почему многие люди не могут правильно ответить на то, что сгенерирует следующий код.

* Если ваш ответ aSet будет содержать нечетные числа только 100% . вы не правы!

Continue — это ключевое слово в Java, которое используется для пропуска текущей итерации.

Предположим, вы хотите распечатать все нечетные числа от 1 до 100

Оператор continue в приведенной выше программе просто пропускает итерацию, когда i четное, и печатает значение i, если оно нечетное.

Оператор Continue просто выводит вас из цикла без выполнения остальных операторов внутри цикла и запускает следующую итерацию.

Рассмотрим условие If Else. Оператор continue выполняет то, что есть в условии, и выходит из условия, т.е. переходит к следующей итерации или условию. Но перерыв выходит из цикла. Рассмотрим следующую программу. ‘

Будет напечатано: aa cc Out of the loop.

Если вы используете break вместо continue (After if.), Это просто aa и выходит из цикла .

Если условие «bb» равно ss выполняется: Для продолжения: переход к следующей итерации, т.е. «cc» .equals (ss). Для разрыва: он выходит из цикла и печатает «Из цикла».

Я немного опоздал на вечеринку, но .

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

В этом случае вся работа по чтению символа и добавлению его buffer выполняется в выражении, управляющем while циклом. continue Заявление служит визуальным индикатором , что петля не нужно тело.

Это немного более очевидно, чем эквивалент:

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

Источник

Оператор continue в Java

Статья про оператор перехода continue тесно связана со статей про оператор перехода break. Рекомендуем Вам ознакомиться с обеими статьями.

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

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

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

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

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

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

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

Оператор continue

Слово «continue» с английского переводится как «продолжать». Continue позволяет опустить участок кода и вернуться в начало цикла. Давайте посмотрим на примере — так будет понятнее 🙂

Синтаксис

Оператор continue записывается так:

Источник

Управление потоком Java: инструкции break и continue

Автор: Olivera Popović
Дата записи

Вступление

Условные операторы и циклы являются очень важным инструментом в программировании. Существует не так много вещей, которые мы могли бы сделать с кодом, который может выполняться только построчно.

Вот что означает “управление потоком” – руководство выполнением нашей программы, вместо того, чтобы позволять ей выполняться построчно независимо от каких-либо внутренних или внешних факторов. Каждый язык программирования поддерживает ту или иную форму управления потоком, если не явно с помощью if s и для s или аналогичных операторов – тогда он неявно предоставляет нам инструменты для создания таких конструкций, т. Е. Языки программирования низкого уровня обычно достигают того, что влияет на множество команд go-to .

Циклы были концепцией, используемой задолго до того, как компьютерное программирование вообще стало чем – то, но первым человеком , использовавшим программный цикл, была Ада Лавлейс, широко известная под своей девичьей фамилией Байрон, при вычислении чисел Бернулли , еще в 19 веке.

В Java существует несколько способов управления потоком кода:

  • утверждения if и if-else
  • операторы переключения
  • операторы while и do-while
  • для и улучшено для заявлений
  • прервите и продолжите выступления

перерыв

Оператор break является одним из “операторов перехода” Java, поскольку он переносит выполнение кода в другую часть кода. Мы уже видели ключевое слово break , используемое в операторе switch . Мы вернемся к нему здесь, наряду с другими вариантами использования:

  • Его можно использовать для остановки выполнения случая switch оператора, вместо того, чтобы позволять ему продолжать выполнение кода и для следующих случаев
  • Его можно использовать для выхода из цикла до того, как он завершит все свои итерации, или как форму выхода из целенаправленно созданных бесконечных циклов
  • Его можно использовать в качестве приемлемой формы оператора “переход”, когда у нас есть несколько вложенных циклов

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

Как мы видим, цикл for выполнялся как обычно, пока не столкнулся с оператором break , после чего Java прекратила выполнение цикла и продолжила выполнение в первой строке после цикла for .

Вот еще один пример:

Этот цикл будет продолжать спрашивать пользователя, хочет ли он выйти из цикла , пока он не ответит соответствующими символами, где мы выходим из цикла, используя break , или завершаем программу с помощью Ctrl + C .

По умолчанию оператор break выходит только из самого внутреннего цикла, в котором он находится.

Если бы мы хотели найти первую позицию, в которой определенный элемент может быть найден в матрице, и мы хотели вырваться из циклов, как только мы его нашли (аналогично примеру с массивом выше), написание следующего не сработало бы:

Мы видим, что цикл продолжал выполняться даже после нахождения 4 в матрице, после заикания в строке, в которой было расположено 4. Это происходит потому, что break вышел только из самого внутреннего цикла, т. Е. Он перестал повторять текущую строку и перешел к следующей. Кроме того, наша задача состояла в том, чтобы найти первое вхождение 4 в матрице, и таким образом мы вернем последнее вхождение 4 в нашей матрице.

Именно здесь в игру вступают помеченные утверждения , которые мы рассмотрим далее.

Помеченные Утверждения

Помеченные операторы могут использоваться вместе с операторами break или continue для имитации перехода к .

Метки могут быть применены к любому блоку кода между <> , для , для каждого , в то время как , делать-в то время как , если и переключить операторы, а также выражения, назначения, возврат операторы, попытка блоки и бросок операторы. Затем мы используем их с операторами break и continue .

Метки работают путем применения идентификатора к конструкции:

Git Essentials

Ознакомьтесь с этим практическим руководством по изучению Git, содержащим лучшие практики и принятые в отрасли стандарты. Прекратите гуглить команды Git и на самом деле изучите это!

Затем мы можем вызвать эти помеченные операторы с помощью break или continue . Например, здесь мы обозначили наш внешний цикл как просто внешний . Чтобы выйти из двух или более вложенных циклов, мы разрываем внешний цикл, вызывая метку:

Использование этого помеченного цикла вместо цикла в приведенном выше примере дает правильный результат и поведение:

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

продолжить

Оператор continue просто пропускает остальную часть текущей итерации и переходит к следующей. Это полезно, когда мы хотим пропустить все (или часть) итерации, соответствующие определенным условиям, особенно если они требуют высокой производительности.

Для цикла while “пропуск” остальной части итерации означает прямой возврат к проверке условия перед следующей итерацией, а для цикла for это означает переход к части “шаг” цикла for (той части, где мы обычно увеличиваем/уменьшаем управляющую переменную), а затем проверяем условие перед следующей итерацией.

продолжить обычно используется с оператором if – > мы будем продолжать , если будет выполнено определенное условие. Мы используем это если для выполнения остальной части итерации, только если условие не выполнено, и пропускаем использование продолжить . Например

продолжить в нашем примере можно легко избежать, используя слегка измененную инструкцию if , главным образом, напечатав число, если i % 3 верно, в противном случае ничего не делая.

Общий совет, касающийся как разрыва , так и (особенно) продолжения , состоит в том, чтобы попытаться использовать их в основном в начале итераций в качестве некоторой формы предварительных условий, которые мы проверяем. Использование продолжить где-то в середине итерации-отличный способ вызвать ошибки, на устранение которых у вас уйдет некоторое время.

Конечно, вы также можете использовать продолжить с помеченными операторами:

Вывод

Управление потоком в коде необходимо практически для каждого приложения. Операторы, которые изменяют поток кода, являются фундаментальными строительными блоками, и каждый начинающий разработчик должен полностью контролировать/осознавать, как они работают.

Используя операторы break и continue , разработчики Java могут имитировать операторы go-to и при необходимости выходить из определенных циклов.

Источник

BestProg

Операторы break , continue . Примеры использования

Содержание

Поиск на других ресурсах:

1. Оператор break . Особенности применения. Общая форма

Оператор break осуществляет выход из блока фигурных скобок оператора цикла или оператора switch и передает управление следующему оператору в программе. Если используются вложенные операторы, то оператор break осуществляет выход из самого внутреннего оператора.

Общая форма оператора break следующая

2. Оператор break с меткой. Особенности применения. Ключевое слово goto

Оператор break с меткой может применяться как аналог оператора goto , который присутствует в других языках программирования. В языке Java оператор goto не используется. Однако, ключевое слово goto есть зарезервированным.

Общая форма оператора break с меткой имеет следующий вид:

где labelName – это метка, которая соответствует кодовому блоку. Кодовый блок – это набор операторов, взятых в фигурные скобки .

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

Общая форма объявления метки следующая

где labelName – имя метки. Имя метки задается также как и для любого идентификатора.

3. В каких операторах можно использовать оператор break ?

Оператор break можно использовать во всех операторах цикла и операторе switch . Другими словами, оператор break не может быть использован за пределами цикла или оператора switch .

4. Оператор continue . Особенности применения. Общая форма

Оператор continue применяется в циклах . Оператор continue обеспечивает переход к следующей итерации в цикле.

Общая форма оператора continue имеет вид:

Чаще всего оператор continue вызывается при достижении некоторого условия в теле цикла.

5. Оператор continue с меткой

Оператор continue может быть реализован с меткой. В этом случае общая форма оператора continue следующая

где labelName – имя метки, которая соответствует циклу, в котором реализован вызов с помощью оператора continue .

6. В каких операторах можно применять оператор continue ?

Оператор continue можно применять только в циклах. Другими словами, оператор continue нельзя применять за пределами цикла.

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

Пример 1. Определение наличия отрицательного числа в одномерном массиве.

Пример 2. Определение наличия заданного числа n в двумерном массиве размером 2*3. В данном примере оператор break вызывается два раза. Первый раз, когда нужно выйти из внутреннего цикла, в котором переменная j есть итератором. Второй раз, когда нужно выйти из внешнего цикла, в котором переменная i есть итератором.

Если двумерный массив есть большим по размеру, то использование оператора break повышает скорость выполнения цикла.

8. Пример использования оператора break с меткой

Оператор break с меткой работает так же, как и оператор goto в других языках программирования. В языке Java оператор goto не используется. Однако, ключевое слово goto зарезервировано. Вместо goto используется оператор break с меткой с некоторыми ограничениями.

Задан двумерный массив целых чисел. Определить, есть ли в массиве отрицательные элементы. Ниже приведен фрагмент кода, решающий данную задачу.

Перебор всех элементов двумерного массива осуществляется в двух вложенных циклах. Перед вызовом циклов помещена метка с именем M1 . Если в цикле нижнего уровня (счетчик j ) встречается команда

то происходит выход с обоих циклов и переход к следующему оператору программы:

Если метку M1 разместить перед оператором if , например:

то компилятор Java сгенерирует ошибку

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

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

Пример 1. Дано n . Написать фрагмент программного кода, который вычисляет следующую сумму S = 2 + 4 + … + 2·n .

Существует много способов решения данной задачи. В данном случае задача решается с использованием оператора continue .

проверяется значение i . Если i нечетно ( i%2==1 ), то происходит переход на следующую итерацию с помощью оператора continue . Таким образом, суммируются только парные значения i .

Пример 2. В заданном массиве чисел все положительные элементы умножить на 2. Для решения используется оператор continue .

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

Пример 1. Демонстрируется использование оператора continue с меткой, которая размещена во вложенном цикле (внутреннем цикле). Метка имеет имя loop . В примере находится сумма элементов, которые размещены на главной диагонали матрицы A размера 5×5.

Пример 2. Демонстрируется использование оператора continue с меткой, которая размещена на внешнем (верхнем) цикле. В программе определяется количество строк массива A , в которых есть отрицательные элементы.

Перебор всех элементов массива осуществляется с помощью двух вложенных циклов. Номер строки соответствует переменной i , номер столбца соответствует переменной j .

Если в i -й строке массива найден хотя бы один отрицательный элемент, то дальнейший перебор элементов этой строки не имеет смысла. Нужно переходить на следующую строку. Именно поэтому, здесь вызывается оператор continue с меткой, которая размещается на верхнем (внешнем цикле). Метка имеет название nextRow .

11. Какие преимущества дает использование операторов break и continue в программах

Использование break и continue дает следующие преимущества:

  • в случае выполнения циклического процесса нет необходимости выполнять лишние итерации, если найдено искомое значение или достигнут нужный результат. Это дает повышение скорости выполнения программы;
  • при преждевременном прекращении циклического процесса не искажается структура кода.
12. Какое отличие между оператором break с меткой и оператором continue с меткой

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

Источник

Оцените статью