Java за неделю. Вводный курс. Валерий Станиславович Яценков

Чтение книги онлайн.

Читать онлайн книгу Java за неделю. Вводный курс - Валерий Станиславович Яценков страница 14

Java за неделю. Вводный курс - Валерий Станиславович Яценков

Скачать книгу

с точки зрения кода программы.

      Давайте воспользуемся знаниями о логических операторах и условном операторе if и перепишем программу. Попробуйте переделать программу самостоятельно, не заглядывая в готовый пример из листинга 4.2.

      Листинг 4.2 Пример программы с использованием логического и условного оператора

      // импортируем класс JOptionPane из библиотеки Swing

      import javax.swing.JOptionPane;

      public class Listing4_2 {

      public static void main (String [] args) {

      int userData;

      String userInput;

      // Выводим окно запроса текущей даты

      userInput = JOptionPane.showInputDialog («Введите число от 1 до 3»);

      // Преобразуем строку в число в явном виде

      userData = Integer.parseInt (userInput);

      if ((userData> =1) & (userData <=3)) {

      JOptionPane.showMessageDialog (null, «Вы ввели число " + userData);

      }

      else {

      JOptionPane.showMessageDialog (null, «Вы ввели недопустимое число!»);

      }

      }

      }

      Отредактированная часть программы выделена жирным шрифтом. Как видите, получилась более компактная и универсальная конструкция. В условном операторе if использовано составное условие

      (userData> =1) & (userData <=3)

      Оно означает, что условие будет истинным, если значение переменной userData больше или равно единице И меньше или равно трем. В этом случае выводится диалоговое окно с сообщением об ошибке.

      4.3 Операторы цикла

      Операторы цикла предназначены для многократного выполнения блоков команд. В языке Java применяются операторы while, do… while и for.

      4.3.1 Оператор цикла while

      Шаблон оператора цикла while имеет вид:

      while (условие) {

      // Блок команд

      }

      При выполнении оператора цикла сначала проверяется условие. Если условие истинно, то выполняется блок команд в теле цикла. Затем условие проверяется снова. Если оно осталось истинным, вновь выполняется блок команд. Если условие стало ложным, то работа оператора цикла прекращается, и управление передается командам, следующим за циклом. Пример цикла while:

      int a = 0;

      while (a <10) {

      System.out.println (a);

      a++;

      }

      System.out.println («Выполнение цикла завершено»);

      В этом примере цикл выполняется до тех пор, пока значение переменной a остается меньше 10. Вы уже знакомы с оператором автоинкремента (++), при помощи которого изменяется значение переменной. Если не менять значение переменной в теле цикла, то цикл будет выполняться вечно, потому что условие всегда будет истинным. Иногда такие «вечные циклы» бывают необходимы. Но в большинстве случаев это логическая ошибка, которая приводит к «зацикливанию» программы.

      При определенных обстоятельствах может случиться так, что блок команд внутри цикла while не будет выполнен никогда, если условие цикла изначально будет ложным. Например, если перед выполнением цикла переменной a будет присвоено значение 10, то цикл из примера не сработает ни разу.

      4.3.2 Оператор цикла

Скачать книгу