Скачать презентацию Мультимедийный курс Программирование на Java Часть1 Лекция 3 Скачать презентацию Мультимедийный курс Программирование на Java Часть1 Лекция 3

02_2_Лекция_JAVA2_Управ._конструкц_Циклы_2015.ppt

  • Количество слайдов: 13

Мультимедийный курс Программирование на Java Часть1 Лекция 3. 1 Управляющие конструкции, циклы 1. Оператор Мультимедийный курс Программирование на Java Часть1 Лекция 3. 1 Управляющие конструкции, циклы 1. Оператор if / else 2. Оператор switch 3. Операторы цикла whilе и do / while 4. Операторы for 5. Операторы break и continue 6. Оператор return

Управляющие конструкции Оператор if / else if (условие) оператор 1 ; [else оператор 2 Управляющие конструкции Оператор if / else if (условие) оператор 1 ; [else оператор 2 ; ] Пример: int i; if (i == 0) matr[i]=1; else matr[i]=-1; Условие всегда должно иметь логическое значение, поэтому if (!i) matr[i]=1; // ошибка! 2

Управляющие конструкции Оператор switch (<выражение>) { case <константа 1> : // последовательность операторов 1 Управляющие конструкции Оператор switch (<выражение>) { case <константа 1> : // последовательность операторов 1 [ break; ] case <константа 2> : // последовательность операторов 2. . . [ default: // последовательность операторов ] } Допустимые типы результата выражения: byte, short, int, char 3

Управляющие конструкции Оператор switch (продолжение) При отсутствии оператора break выполнение проходит через каждый последующий Управляющие конструкции Оператор switch (продолжение) При отсутствии оператора break выполнение проходит через каждый последующий case пока не встретится break или конец оператора 4

Управляющие конструкции Операторы цикла whilе и do / while vс предусловием (условие проверяется до Управляющие конструкции Операторы цикла whilе и do / while vс предусловием (условие проверяется до выполнения вложенного оператора ) while (условие) оператор; vс постусловием (условие проверяется после выполнения вложенного оператора ) do оператор while (условие); 5

Управляющие конструкции Примеры циклов: float sum = 0, x = 1; // Цикл с Управляющие конструкции Примеры циклов: float sum = 0, x = 1; // Цикл с предусловием while(x < 100) { sum += 1 / x; x++; } // То же, но с постусловием sum = 0; x = 1; do { sum += 1 / x; x++; while(x < 100) // Идиома бесконечного цикла while (true) { // оператор } 6

Управляющие конструкции Оператор for обычный for ([<иниц. _часть>]; [<условие>] ; [<итерац. _часть >]) оператор Управляющие конструкции Оператор for обычный for ([<иниц. _часть>]; [<условие>] ; [<итерац. _часть >]) оператор ; Управляющая переменная м. б. объявлена внутри заголовка for (с областью действия - for-оператор) for (int i=10; i>0; i--) System. out. println(i); Может быть несколько управляющих переменных цикла: for (int i=1, j=5; i>j; i++, j--) System. out. println("i="+i); System. out. println(“j="+j); 7

Управляющие конструкции Оператор for обычный (продолжение) for (; !done; ) { // отсутствуют части Управляющие конструкции Оператор for обычный (продолжение) for (; !done; ) { // отсутствуют части заголовка if (j==5) done=true; j++; } Бесконечный цикл: for ( ; ; ) { … } 8

Управляющие конструкции Оператор for итерационный (типа each) for (<тип> <перем. > : <имя_мас. / Управляющие конструкции Оператор for итерационный (типа each) for (<тип> <перем. > : <имя_мас. / имя_кол. >) оператор ; Пример: float m 1[]={23. 2 f, 3, 45}; for (float m : m 1) { System. out. print(m); System. out. print(" "); } 9

Управляющие конструкции Операторы break и continue break – прерывание цикла с переходом на оператор Управляющие конструкции Операторы break и continue break – прерывание цикла с переходом на оператор сразу за циклом continue - переход к следующей итерации цикла без завершения текущей Пример: второй десяток слагаемых в сумму не войдет. for (float x = 1; x < 100; x++ ) { if ( 10 < x && x < 21) continue; sum += 1 / x; } 10

Управляющие конструкции Операторы break и continue (продолжение) break <метка> – переход на оператор, следующий Управляющие конструкции Операторы break и continue (продолжение) break <метка> – переход на оператор, следующий сразу за помеченным блоком Пример: досрочный выход из вложенных циклов. for (int i 1 = 0; i 1 < 10; i 1++) { L: for (int i 2 = 0; i 2 < 10; i 2++) { for (int i 3 = 0; i 3 < 10; i 3++) { if (i 3 == 6) break L; } } /* Сюда передается управление после выполнения оператора "break L; " */ } 11

Управляющие конструкции Операторы break и continue (продолжение) continue <метка> – прерывает текущую итерацию цикла Управляющие конструкции Операторы break и continue (продолжение) continue <метка> – прерывает текущую итерацию цикла и продолжает помеченный цикл (только в циклах); 12

Управляющие конструкции Оператор return Обеспечивает возврат из вызываемого метода в вызывающую программу (java-систему в Управляющие конструкции Оператор return Обеспечивает возврат из вызываемого метода в вызывающую программу (java-систему в том числе) Использование допустимо только вместе с оператором if: if (i==2) return; 13