Фрагмент лекции JavaRush - университета.
— Хочу рассказать тебе ещё об одном цикле. Этот цикл называется 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 содержит в скобках одно условие, то for – три. Но при компиляции for превращается в такой же цикл, как и while.
— Первое выражение в цикле for (выделено зеленым) выполняется один раз до цикла.
— Второе выражение выполняется каждый раз перед исполнением тела цикла – аналогично условию в цикле while.
— Третье – каждый раз после исполнения тела цикла.
— А зачем нужен ещё один цикл. С while все прекрасно понятно.
— Это сделано для удобства программистов. Циклы встречаются в программировании очень часто, и удобно, когда в одной строчке собрана информация о стартовом значении переменной, условии её изменения и команда, которая её меняет.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ