Фрагмент от лекция с ментор като част от курса на Codegym University. Запишете се за пълния курс.


„Искам да ви разкажа за още един цикъл. Цикълът for . Това е просто друг начин за изразяване на цикъл while, просто по-компактен и удобен (за програмисти). Ето няколко примера:“

докато
int i = 3;
while (i >= 0)
{
    System.out.println(i);
    i--;
}
за

for
(int i = 3; i >= 0; i--) { System.out.println(i); }
докато
int i = 0;
while (i < 3)
{
    System.out.println(i);
    i++;
}
за

for
(int i = 0; i < 3; i++) { System.out.println(i); }
докато
boolean isExit = false;
while (!isExit)
{
    String s = buffer.readLine();
    isExit = s.equals("exit");
}
за

for
(boolean isExit = false; !isExit; ) { String s = buffer.readLine(); isExit = s.equals("exit"); }
докато
while (true)
    System.out.println("C");
за
for (; true; )
    System.out.println("C");
докато
while (true)
{
    String s = buffer.readLine();
    if (s.equals("exit"))
        break;
}
за
for (; true; )
{
    String s = buffer.readLine();
    if (s.equals("exit"))
        break;
}

"А?"

"Тези цикли са еквивалентни. Цикълът while съдържа едно condition в скобите, но има три елемента в израза за цикъл for. Но компилаторът превръща цикъл for в еквивалентен цикъл while . "

"Първият израз в for цикъл ( маркиран в зелено ) се изпълнява веднъж преди началото на цикъла."

" Вторият израз се оценява всеки път, преди да се изпълни тялото на цикъла. Това е като conditionто в цикъл while."

" Третият израз се изчислява след всяко изпълнение на тялото на цикъла."

"Защо имаме нужда от още един цикъл? Всичко е напълно ясно с цикъла while ."

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