Циклы for и while в Java

Надо обработать много однотипных данных? Надо вычислить ряд? Надо перемножить матрицы? Все это и намного больше поможет сделать цикл! 🙂 Все вычислительные системы изначально задумывались для того чтобы облегчить обработку данных. А обработку большого количества данных невозможно даже представить без циклов.

Вообще циклы в программировании принято разделять на три группы. Первая группа — это циклы со счетчиком. В них тело цикла выполняется некоторое количество раз, изначально заданное программистом. Такой цикл, обязательно выполнится заданное количество раз. Вторая группа — это циклы с предусловием. В них тело цикла выполняется только после проверки какого-то условия и будет выполняться до тех пор, пока это условие верно. Такие циклы могут не выполниться ни разу (если условие изначально ложно). И третья группа циклов — циклы с постусловием. В них сначала выполняется тело цикла, затем проверяется условие. Такой цикл выполнится как минимум один раз.

Начнем, пожалуй, с цикла со счетчиком. В Java — это цикл for; В общем виде его можно записать так:

		for (Начальное условие; конечное условие; изменение)
		{
			тело цикла;
		}

Таким образом, если мы хотим выполнить какое-то действие 10 раз то мы должны записать следующее:

		for (int i = 0; i<10; i++)
		{
			System.out.println(i);
		}

такая программа последовательно выведет на экран числа от нуля до девяти. Если чуть подробнее, то мы просто создаем новую переменную i и присваиваем ей начальное значение 0 ( int i = 0; ). Затем указываем, что цикл должен выполняться до тех пор, пока i < 10 и указываем каким образом должно изменяться i после каждой итерации цикла (i++).

Тех, кто программировал на паскале порадует такая возможность:

		int k = 15;
		for (float i = 0; i<k; i+=1.5)
		{
			System.out.println(i);
		}

В этом примере значение переменной i будет увеличиваться на 1,5 при каждой итерации. Можете проверить :).

Следующий цикл на очереди — while. Это цикл с предусловием и в общей форме его можно записать вот так:

while(логическое выражение)
{
действия
}

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

while (a<10)
{
System.Out.Print(a);
a++;
}

 

Итак, понятно, что этот цикл имеет смысл использовать если вы точно не знаете сколько именно итераций необходимо для достижения цели, однако точно знаете условие при котором Ваша цель будет достигнута. Такая конструкция может не выполниться ни разу (ведь это цикл с предусловием)! Сколько раз выполнятся действия в цикле зависит от значения которое изначально было в переменной a.

И третий вид циклов — это циклы с постусловием. Он очень похож на while … do только если в while … do условие проверяется перед выполнением цтела цикла, то здесь условие проверяется уже после того как выполнится тело цикла. А это значит, что цикл выполнится как минимум один раз до того как проверится условие.

Записывается это дело примерно так:

do
{
        действия
}
while(условие);

Ну как видно это тот же while … do в котором операторы просто поменялись местами.

Ну вот на этом на сегодня наверно все 🙂 Есть вопросы? Пишите!

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Запись опубликована в рубрике Java основы языка, Знакомимся с Java, Новичку, Программирование с метками , , , , , , , . Добавьте в закладки постоянную ссылку.

10 комментариев на «Циклы for и while в Java»

  1. zesen говорит:

    Надо описать новый цикл FOR

  2. HrundelB говорит:

    «Ну и если взять рабочий пример, то выглядеть он будет примерно так:
    while (a>10)»
    Наверное имелось ввиду a < 10, иначе смысл цикла как-то теряется)

  3. azad говорит:

    Большое спасибо за урок!
    Кое — чему научился !

  4. azad говорит:

    Мне 52 года . Если Вы посоветовали бы мне еще учебники ,
    был бы очень Вам признателен!

    • davidmd говорит:

      Учебник? Ну я бы посоветовал Эккеля «Философия Java» и Шилдта «Руководство по Java» (точное название не помню) я сам начинал вообще с самоучителя по Java за авторством Хабибулина но на мой взгляд это не лучшая книжка

      • propg говорит:

        Здравствуйте! советую освоить книгу Дейтела «Как программировать на С++» Я зыки Java и C++ очень похожи по синтаксису, поэтому можно изучать Java и по этой книге. А самое главное, эта книга учит писать чистый и красивый код, дает полезные советы как лучше программировать и рассматривает множество алгоритмов.

  5. антигерой говорит:

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

  6. антигерой говорит:

    Да: break;
    Выхода из цикла — если его молотить больше ненадо, всвязи с выполнением задачи или выходом за граничные условия.

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

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