Повторення дій за допомогою циклів

Цикли використовуються, для того щоб виконати яке – небудь дію кілька разів Наприклад, потрібно надрукувати поздоровлення для декількох переможців Якщо ви заздалегідь знаєте скільки раз повторити дію – використовуйте цикл for:

int  totalPlayers = playerslength

int counter

for (counter=0 counter &lttotalPlayers counter++){  String thePlayer = players[counter]

Systemoutprintln (Вітаємо, + thePlayer + !”)

}

JVM виконує кожну рядок між фігурними дужками, і потім повертається до першого рядка циклу для того, щоб збільшити значення counter (лічильника) і перевірити умова завершення циклу Цей код означає наступне:

Надрукувати значення елемента масиву, чий номер індексу збігається зі значенням лічильника Почати з елемента з номером 0 (counter = 0), і збільшувати значення counter на одиницю (counter + +) Продовжувати до тих пір, поки counter менше totalPlayers (counter

Існує ще одне ключове слово для створення циклів – while ВТАК циклах не потрібно точно знати, скільки разів буде повторюватися

дію, але необхідно задати умову закінчення циклу Давайте подивимося, як можна привітати учасників гри за допомогою циклу while, він закінчиться, коли counter (лічильник) стане рівним totalPlayers:

int  totalPlayers = playerslength

int counter=0

while (counter&lt totalPlayers){

String thePlayer = players [counter] Systemoutprintln (Вітаємо, + thePlayer + !”) counter + +

}

У главі 9 розказано, як зберегти дані у файл на диску і як рахувати їх назад в память програми Якщо ви читаєте результати гри з файлу, що лежить на диску, то заздалегідь невідомо, як багато записів було збережено у файл Швидше за все, доведеться зчитувати такі записи за допомогою циклу while

Так само можна використовувати ще два оператора в циклах: break іcontinue Ключове слово break використовується, щоб вистрибнути з циклу, коли деяка умова ставати істинним (true) Скажімо, ми не хочемо друкувати більше трьох поздоровлень, незалежно від того, як багато гравців учавствовалоВ наступному прикладі, після виведення елементів масиву 0, 1 і 2, виконання програми вийде з циклу з – за інструкції break і продовжиться з рядка після закриває фігурної скобкіОбратіте увагу на подвійний знак рівності в операторі if Значення змінної counter порівнюється з числом 3 Одинарний знак дорівнює означав би, що значення 3 присвоюється змінної counter Якщо переплутати == с = в операторі if, то програма буде працювати, але неправильно і таку помилку іноді дуже не легко знайти:

int counter =0

while (counter&lt totalPlayers){

if (counter == 3){

break / / Вистрибуємо з циклу

}

String thePlayer = players[counter] Systemoutprintln(&quotCongratulations,  &quot+thePlayer+ &quot!&quot) counter++

}

Оператор continue дозволяє пропустити виконання рядків, що стоять після нього і повернутися до початку циклу Уявімо, що ми хочемо привітати всіх, крім Девіда – continue поверне виконання програми до початку циклу

while (counter&lt totalPlayers){

counter++

String thePlayer = players[counter]

if (thePlayerequals(&quotDavid&quot){

continue

}

Systemoutprintln(&quotCongratulations,  &quot+ thePlayer+ &quot)

}

Є ще один тип оператора while, який починається зі слова do, наприклад:

do {

/ / Тут ваш код, що-небудь який вважає

} while (counter&lt totalPlayers)

У таких циклах умова перевіряється після виконання коду, що стояв між фігурними дужками Таким чином, цей код виконається хоча б один раз Цикли, в яких while варто спочатку, можуть не виконатися жодного разу, якщо умова помилкова (false)

Офіційний підручник з Java:

http://downloadoraclecom/javase/tutorial/java/indexh  tml

 

Практичні вправи

 

1 Створіть новий клас і назвіть його TemperatureConverter Додайте в нього метод для перетворення температур, з такою сигнатурою:public String convertTemp

(int temperature, char convertTo)

Якщо аргумент convertTo дорівнює F, то температура повинна бути перетворена у Фаренгейт, якщо C, то в Цільсій Коли ви будете викликати цей метод, помістіть значення аргументу типу char в одинарні лапки 2 Оголосіть метод convertGrades () класу ReportCard як статичний і видаліть рядок ініціалізації класу з методу main () Практичні вправи для розумників і розумницьs

Ви помітили, що в прикладі з ключовим словом continue ми перемістили рядок з counter + + в початок циклу

Що б сталося, якби ми залишили цю строчку в кінці циклу, як це було в прикладі з break

Джерело: Java Programming for Kids, Parents and Grandparents by Yakov Fain

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*