Java руководство для начинающих - Шилдт Герберт (2012)
-
Год:2012
-
Название:Java руководство для начинающих
-
Автор:
-
Жанр:
-
Оригинал:Английский
-
Язык:Русский
-
Издательство:Вильямс
-
Страниц:316
-
ISBN:978-5-8459-1770-6
-
Рейтинг:
-
Ваша оценка:
Java руководство для начинающих - Шилдт Герберт читать онлайн бесплатно полную версию книги
Объявление управляющих переменных в цикле for
Нередко переменная, управляющая циклом for, требуется только для выполнения самого цикла и нигде больше не используется. В таком случае управляющую переменную можно объявить в инициализирующей части оператора цикла for. Например, в приведенной ниже программе вычисляется сумма и факториал чисел от 1 до 5, а переменная i, управляющая циклом for, объявляется в этом цикле.
// Объявление переменной управления циклом в самом цикле for.
class ForVar {
public static void main(String args[]) {
int sum = 0;
int fact = 1;
// Вычисление факториала чисел от 1 до 5.
// Переменная управления объявляется в этом цикле for.
for(int i = 1; i <= 5; i++) {
sum += i; // Она доступна во всем цикле,
fact *= i;
}
//Но недоступна за пределами цикла.
System.out.println("Sum is " + sum);
System.out.println("Factorial is " + fact);
}
}
Объявляя переменную в цикле for, не следует забывать о том, что область действия этой переменной ограничивается пределами оператора цикла for. Это означает, что за пределами цикла действие данной переменной прекращается. Так, в приведенном выше примере переменная i оказывается недоступной за пределами цикла for. Для того чтобы использовать переменную управления циклом в каком-нибудь другом месте программы, ее нельзя объявлять в цикле for.
Прежде чем переходить к чтению последующих разделов этой главы, поэкспериментируйте с собственными разновидностями цикла for. В ходе эксперимента вы непременно обнаружите замечательные свойства этого цикла.
Расширенный цикл for
С недавних пор в распоряжение программирующих на Java предоставлен так называемый расширенный цикл for, обеспечивающий специальные средства для перебора объектов из коллекции, например из массива. Расширенный цикл for будет представлен в главе 5 при рассмотрении массивов.
Цикл while
Еще одной разновидностью циклов в Java является while. Ниже приведена общая форма этого цикла.
while (условие) оператор;
где оператор — это единственный оператор или блок операторов, а условие означает конкретное условие управления циклом и может быть любым логическим выражением. В этом цикле оператор выполняется до тех пор, пока условие истинно. Как только условие становится ложным, управление программой передается строке кода, следующей непосредственно после цикла.
Ниже приведен простой пример использования цикла while для вывода на экран букв английского алфавита.
// Демонстрация цикла while,
class WhileDemo {
public static void main(String args[]) {
char ch;
// вывести буквы английского алфавита, используя цикл while
ch = 'а';
while(ch <= 1z1) {
System.out.print(ch);
ch++;
}
}
}
В данном примере переменная ch инициализируется кодом буквы а. На каждом шаге цикла на экран сначала выводится значение переменной ch, а затем это значение увеличивается на единицу. Процесс продолжается до тех пор, пока значение переменной ch не станет больше кода буквы z.
Как и в цикле for, в цикле while проверяется условное выражение, указываемое в самом начале цикла. Это означает, что код в теле цикла может вообще не выполняться, а кроме того, избавляет от необходимости производить отдельную проверку перед самим циклом. Данное свойство цикла while демонстрируется в следующем примере программы, где вычисляются целые степени числа 2 от 0 до 9.
// Вычисление целых степеней числа 2.
class Power {
public static void main(String args[]) {
int e;
int result;
for(int i=0; i < 10; i++) {
result = 1;
e = i;
while(e > 0) {
result *= 2;
e--;
}
System.out.println("2 to the " + i +
" power is " + result);
}
}