Автор: Widowmaker1984

Вопросы 17, 18, 19 (циклы)

"Какие циклы вы знаете, в чем их отличия?"
"Что такое «итерация цикла»?"
"Какие параметры имеет цикл for, можно ли их не задать?"


1. Цикл — это многократно повторяющийся фрагмент программы. В java существует два типа циклов: типа «пока» и типа «n-раз». Первый тип «пока» предназначен для повторения какого-то действия до тех пор, пока выполняется некоторое условие. Пример: увеличивать число на 5 до тех пор, пока оно не станет трёхзначным. Второй тип «n-раз» предназначен для повторения каких-то действий заранее известное количество раз. Пример: умножить число само на себя 4 раза.

скрытый текст1.1. Однократное выполнение кода, размещенного в повторяющемся фрагменте ("теле цикла"), называется его итерацией.

2. Цикл типа «пока» (операторы while и do…while). Оператор while повторяет указанные действия до тех пор, пока его параметр имеет истинное значение. Общая форма оператора:


while (УсловиеВыполнения) {
ТелоЦикла;
}

скрытый текст2.1. Пока УсловиеВыполнения выполняется (результат его вычисления равен true), будет выполняться и ТелоЦикла, где может быть один оператор или их группа. Когда условие становится ложным, программа передаёт управление на строчку сразу после цикла. Ключевым моментом цикла while является то, что его тело может ни разу не выполниться.

2.2. Бывает цикл типа «пока» с постпроверкой условия. Для его записи используется конструкция из операторов do…while. Общая форма оператора:


do {
ТелоЦикла;
} while (УсловиеВыполнения);

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

3. Цикл типа «n-раз» (оператор for). Он позволяет эффективно написать цикл, который должен выполниться определенное количество раз. Цикл for полезен, когда известно, сколько раз должна быть повторена задача. Общая форма оператора:


for (Инициализация; УсловиеВыполнения; Обновление) {
ТелоЦикла;
}

скрытый текст3.1. Процесс управления в цикле:
- Стадия инициализации выполняется первой, и только один раз. Этот шаг позволяет объявлять и инициализировать любые переменные для управления циклом, и он заканчивается точкой с запятой(;).
- Далее логическое выражение. Если оно истинно, тело цикла выполняется, если оно ложно, тело цикла не будет выполнено и контроль переходит к следующему оператору.
- После того как тело цикла for выполняется, контроль переходит обратно к оператору обновления. Он позволяет обновлять какие-либо переменные для управления циклом, и записывается без точки с запятой в конце.
- Логическое выражение затем оценивается снова. Если истинно, цикл выполняется и процесс повторяется. Если ложно, цикл for завершается.

3.1.1 Цикл можно записать следующим образом: for(;;); будет аналогично while(true).

3.2. Улучшенный цикл for — в основном используется для обхода коллекцией элементов, включая массивы. Был введен начиная с Java 5, позволяет достигнуть большей краткости кода. Наиболее фундаментальным отличием использования по сравнению со "старым for" является отсутствие необходимости использовать счетчик. Общая форма оператора:


for (Объявление: Выражение)
{
ТелоЦикла
}

скрытый текст3.2.1. Объявление — это переменная, например Object listElement. Эта переменная должна иметь тип, совместимый с каждым элементом списка, массива или коллекции, по которым производится итерация. Выражение — выражение, вычисляющее что-то, по чему можно делать итерацию (возвращает коллекцию или массив). Может быть переменной, вызовом функции или комплексным выражением. Тело Цикла — один или несколько операторов, применяемых ко всем элементам коллекции или массива.
1

Комментарии


Лучшее   Правила сайта   Вход   Регистрация   Восстановление пароля

Материалы сайта предназначены для лиц старше 16 лет (16+)