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

Как мы помним, файл должен называться так же, как и наш класс и щелкнем на кнопку Сохранить. В языке Java существует два варианта повторяющихся циклов, которые можно использовать в том случае, если мы точно не знаем, сколько повторений должно быть выполнено. Так называемые неопределенные циклы, в ходе выполнения которых, мы все время проверяем какое-либо условие и лишь пока выполняется это условие, и будут выполняться операторы цикла.

Попробуем, например, выполнить какое-либо простейшее действие. Например, сложить первую последовательность натуральных чисел, до тех пор, пока эта сумма не превысить число 100. Для этого введем несколько переменных целого типа (integer) i1, эта переменная, в которой мы будем держать последовательность натуральных чисел. Далее переменная sum, в которой мы будет аккумулировать результат. Также переменная max, до которой мы и хотим сложить наши натуральные числа. Теперь же организуем цикл. До этого проведем инициализацию наших переменных. Пусть i1 равняется 0 с самого начала. Далее сумма тоже равняется 0.

А число max пусть равняется, например 100, точка с запятой. Теперь оператор File, который является оператором цикла. Условием у нас будет, чтобы следующая сумма, а именно sum+i1 должна быть меньше числа mаx. Пока это условие будет выполняться, мы будем выполнять наши действия. Введем составной оператор.

Для этого напишем фигурные скобки, внутри которой напишем теперь следующее. Число i1 увеличим на единицу. Для этого воспользуемся оператором ++, далее нашу сумму увеличим на i1. Воспользуемся такой записью оператора. И теперь выведем на печать наш полученный результат. Для этого воспользуемся оператором Println, скопируем его из вот этого места, правая кнопка мыши. Сору. Вставим сюда. Правая кнопка мыши и Paste.

Теперь кавычки, sum. Далее напишем, что мы проводим сумму от 0 до какого-то числа. В нашем случае, следующим числом, которое мы складываем, это будет i1. И эта сумма должна равняться знак равенства в кавычках и далее плюс теперь результат суммы. Закрыть скобку. Точка с запятой. И теперь скомпилируем нашу программу и выполним для этого Tools.

Далее Compile Java. Теперь Tools, Run

Java Application. Можно увидеть результат выполнения нашей программы. Мы, оказывается, сложили числа от 0 до 13, и в результате получили сумму 91. Если же прибавить следующее число, оно будет 14, то, конечно же, вы уже получите число больше 100. Закроем теперь это окно и вернемся в наш редактор.

Ту же самую операцию можно проделать и с помощью другого варианта оператора цикла. Напишем, например, таким образом. Заново определим i1 и sum, i1 равно 0, далее sum равно 0, и дальше напишем опять оператор цикла. Но на этот раз его напишем при помощи операторов do и while. Далее выпишем, что мы хотим сделать. Сделать мы хотим то же самое, i1 увеличим на единицу. Далее сумму увеличим на величину i1. Точка с запятой. Теперь надо закрыть фигурные скобки. И теперь надо написать: while. И внутри скобок условие, в течение которого и будет выполняться наш оператор цикла. Ну, опять напишем условие то же самое: sum + i1 будет меньше max. Закрыть скобки. Точка с запятой.

И далее выведем на печать то же самое выражение. Для этого скопируем эту строчку. Выделим. Правая кнопка мыши. Сору. Теперь встанем сюда. Правая кнопка мыши. Paste. И попробуем скомпилировать и запустить наше приложение. Для этого пункт меню Tools. Далее Compile Java. Далее Tools, Run Java Application, и, как и нужно было ожидать, в случае первого цикла и в случае второго цикла, мы получили абсолютно идентичный результат. Закроем консольное окно.

Отметим то существенное отличие, которое есть между этими двумя операторами цикла. Как мы видим, в первом операторе цикла у нас условие стоит в самом начале цикла, а во втором случае, условие стоит в конце цикла. Из этого следует такой вывод, что во втором случае, этот цикл выполнится хотя бы один раз в любом случае, поскольку проверить это условие можно будет лишь при прохождении всего целого цикла хотя бы один раз. А в первом случае, мы сразу же проверяем условие и поэтому в случае, если оно неверное это условие, все эти операторы, которые находятся внутри фигурных скобок, будут пропускаться и будут выполнять следующий оператор. Т.е. различие между двумя операторами цикла проявляется в том случае, если у нас с самого начала условие неверно. Продемонстрируем это. Скопируем все эти строчки. Выделим. Правая кнопка мыши Сору.

Теперь Enter. Вставим. Правая кнопка мыши. Paste. И единственное, что сделаем, изменим, назначение переменной max со 100 на (-100) и посмотрим, что в этом случае произойдет. Конечно же, в этом случае, условие неверно с самого начала. Посмотрим, что тогда мы получим. Для этого Tools. Далее Compile Java. Теперь запустим наше приложение, Tools, Run Java Application. И вот можно видеть, что, если в первом случае, когда мы складывали все суммы до 100, у нас результат получился абсолютно идентичный, и в первом и во втором случае.

То, во втором случае, когда мы в качестве максимального числа взяли (-100) сразу же неверное условие, результат у нас получился при выполнении цикла так сказать первого вида и второго, два различных результата. Поскольку, в первом случае цикл не выполнился ни разу, и сумма и переменная i1 равняется 0, а во втором случае, несмотря на то, что условие у нас с самого начала неверно, один раз цикл тем не менее выполнился и поэтому результат получился и для переменной i1 и для суммы 1. Закроем теперь это консольное приложение и вернемся в наш текстовый редактор.

Оператор if. составной оператор. вложение операторов if | TeachPro WEB-дизайн | Операторы цикла for