Как да напиша for for Loop в Java

Как да напиша for for Loop в Java

Цикли са много мощни инструменти за програмиране, които ще завършат набор от инструкции, докато не бъде изпълнено условие. Те са много удобни и трябва да бъдат една от първите концепции за програмиране, които научавате. Има много различни видове контури, но за циклите са може би един от най -полезните цикли.





For Loop в Java

За цикли ще продължи да изпълнява блок код, докато не бъде изпълнено условие. Важно е да се отбележи, че цикълът for ще провери условието в началото на цикъла, а не в края. Това означава, че ако условието е изпълнено, цикълът няма да започне.





За цикъла синтаксисът е подобен в езиците за програмиране. Така че, ако сте създали цикъл for в друг език за програмиране, Java цикълът ще изглежда познат. Ако обаче изобщо не сте запознати с Java, се препоръчва да прочетете урока за начинаещи, преди да научите разширени теми, като например цикли.





for([statement1]; [condition]; [statement2]){
//code to execute each loop
}

Ключовата дума за показва цикъл за for. Условието, което определя колко дълго ще продължи цикълът, се намира между скобите.

Първият израз се изпълнява веднъж при стартиране на цикъла for; условието определя кога цикълът трябва да спре.



Вторият израз се изпълнява в края на всеки цикъл. Точките и запетаите отбелязват края на изявление1 и състоянието.

Обикновено изразите се използват за създаване на брояч и условието спира цикъла, след като броячът достигне определено число. И накрая, кодът, който се изпълнява във всеки цикъл, се поставя между фигурните скоби.





public class Main{
public static void main(String[] args) {
for(int i = 1; i <4; i++){
System.out.print(i);
}
}
}
//Output: 123

В горния пример цикълът for отпечатва стойността на i . Ключовата дума за инициализира цикъла. Променливата i първоначално е зададено на 1. Условието проверява дали i е четири или повече. Това не е така, така че нашият цикъл се изпълнява. Кодът на цикъла отпечатва стойността на i , което все още е 1 към този момент.

След като кодът на цикъла е завършен, i се увеличава с едно и цикълът започва отново. В края на третия цикъл, i се увеличава до четири. Когато следващият цикъл започне, нашето условие е изпълнено, така че цикълът спира.





Свързани: Основни Java концепции, които трябва да научите, когато започнете

Вложено за цикъл

След като разберете цикъла for, трябва да опитате да създадете вложен for цикъл. Това е, когато имате цикъл for в друг for цикъл. Това е усъвършенствана техника, тъй като може да бъде трудно да се разбере как ще взаимодействат двата контура. Добър начин да визуализирате работата на вложените цикли е да създадете следния модел с вложен цикъл for.

*
**
***

За да създадем това, ще ни трябва един цикъл, за да контролираме колко звезди са отпечатани на всеки ред, и друг цикъл, за да контролираме колко реда да създадем. Когато сте нов за вложени за цикли, може да е трудно да определите кой цикъл е вътрешният цикъл. В този случай цикълът, който отпечатва звездите, е вътрешният контур. Нуждаем се от този цикъл, за да се изпълнява всеки път, когато се създава нов ред.

Когато създавате вложен цикъл, бъдете внимателни, когато избирате името на променливите на брояча. Въпреки че често програмистите използват родово i counter, използването на общи броячи става объркващо, когато взаимодействат множество цикли.

for(int lineCounter = 1; lineCounter <4; lineCounter++){
for(int starCounter = 1; starCounter <= lineCounter; starCounter++){
System.out.print('*');
}
System.out.print('
');
}

Нека преминем през този пример, за да разберем по -добре как работи.

Първият ни цикъл брои колко реда правим. След като цикълът се изпълни три пъти, той ще спре.

Следващият цикъл е малко по -сложен. Този цикъл контролира колко звезди са отпечатани на всеки ред. В нашия модел искаме същия брой звезди като номера на реда. Първият ред има една звезда, вторият две и третият три. И така, искаме този цикъл да отпечата толкова звезди, колкото нашият текущ брояч на редове.

След като нашият звезден цикъл е завършен, линейният цикъл създава нов ред чрез отпечатване н , което е командата за нов ред.

Безкрайни цикли

Една от опасностите от кодирането на всеки тип цикъл е, че можете случайно да създадете безкраен цикъл. Това са контури, които никога не спират. Въпреки че има случаи, когато е необходим безкраен цикъл, те обикновено се създават случайно, когато състоянието на цикъла не е внимателно планирано. В тези случаи програмата ще продължи да работи, докато не я принудите да се затвори.

За да създадете безкраен цикъл, можете да използвате следния синтаксис:

for(;;){
//code that never stops looping
}

Свързани: Уебсайтове и приложения, които могат да помогнат при изучаването на програмиране на Java

Използване на цикъл For с масив

Често срещан начин за използване на цикъл for е да се итерира през масив. Например, ако искате да отпечатате всички низове в масив, не можете просто да кажете

System.out.print([array]);

Тази команда ще отпечата информация за масива, а не съдържанието на масива. За да отпечатате съдържанието на масива, трябва да отпечатате всеки отделен елемент в масива. Това би отнело много време за кодиране, но можете да създадете цикъл за преминаване през всеки елемент.

String[] words = {'Hello', ' ', 'World', '!'};

for(int i = 0; i System.out.print(words[i]);
}

Не забравяйте, че позициите на масива започват от нула, а не от единица, затова искаме цикълът ни да започне от нула. Първият ни цикъл ще се отпечата Здравейте , вторият цикъл ще отпечата интервал и т.н. След четвъртия цикъл нашият брояч ще бъде увеличен до четири, което не е по -малко от дължината на масива, който също е четири. Това ще спре цикъла.

Изход:

Hello World!

За всеки цикъл

Въпреки че можете да използвате цикъл for за повторение на масив, по-лесно е да използвате цикъл за всеки. Тези контури са проектирани специално за масиви. A за всеки цикъл ще премине през всеки елемент в масив и ще изпълни код. За всеки цикъл има малко по-различен синтаксис. Ключовата дума за все още се използва, но условие не е посочено.

for([dataType] [arrayElement] : [array]){
//code to be executed
}

Предишният ни пример може да бъде пренаписан като за всеки цикъл, използвайки този синтаксис:

String[] words = {'Hello', ' ', 'World', '!'};

for(String word : words){
System.out.print(word);
}

Цикълът започва с ключовата дума за . След това уточняваме, че данните в нашия масив са низове. След това избираме име на променлива, за да се позоваваме на елементите в масива, докато преглеждаме цикъла. В този случай използвахме дума . Следва двоеточие и името на масива, през който искаме да повторим. Сега, в нашия цикъл, просто трябва да използваме променливата дума да се позовава на всеки елемент в масива.

Кога да използвате For Loop

For Loops са чудесни инструменти, които могат да ви спестят много кодиране. Те са най -добрият тип цикъл за използване, когато знаете точно колко пъти искате цикълът ви да се изпълнява. Можете дори да увеличите сложността на for цикли, като ги вложете.

Вложените за цикли са особено удобни при работа с многоизмерни масиви. Защото контурите са лесни за научаване и важно умение за начинаещи. Тази техника със сигурност ще ви спести от кодирането на ненужен повтарящ се код.

как да създадете ред в word
Дял Дял Туит електронна поща 9 -те най -добри редактора на безплатни кодове за писане на първото ви приложение

Добрият редактор на код може да улесни живота на програмиста, но кой е най -подходящ за вас?

Прочетете Напред
Свързани теми
  • Програмиране
  • Java
  • Програмиране
За автора Дженифър Сийтън(21 статии са публикувани)

Дж. Сийтън е научен писател, специализиран в разбиването на сложни теми. Има докторска степен от университета в Саскачеван; нейното изследване се фокусира върху използването на базирано на игри обучение за повишаване на ангажираността на учениците онлайн. Когато тя не работи, ще я намерите с четене, игра на видео игри или градинарство.

Още от Дженифър Сийтън

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!

Щракнете тук, за да се абонирате