В Java, как и в любом другом языке программирования, в качестве управляющей логики программы служат условные операторы и циклы. Рассмотрим сначала
условные операторы, а затем перейдем к циклам. И завершим обсуждение управляющей логики довольно громоздким оператором switch, который можно применять для проверки многих значений одного выражения.
НА ЗАМЕТКУ С++! Языковые конструкции управляющей логики в Java такие же, как и в С и С++, за исключением двух особенностей. Среди них нет оператора безусловного перехода goto, но имеется версия оператора break с метками, который можно использовать для выхода из вложенного цикла (в С для этого пришлось бы применять оператор goto). Кроме того, в Java реализован вариант цикла for, не имеющий аналогов в С или С++. Его можно сравнить с циклом f oreach в С#.
Область действия блоков
Прежде чем перейти к обсуждению конкретных языковых конструкций управляющей логики, необходимо рассмотреть блоки. Блок, или составной оператор, представляет собой произвольное количество простых операторов Java, заключенных в фигурные скобки. Блоки определяют область действия переменных. Блоки могут быть вложенными друг в друга. Ниже приведен пример блока, вложенного в другой блок в методе main ().
public static void main(String[] args) {
int n;
• • •
{
int k;
• • •
} // переменная k определена только в этом блоке
}
В Java нельзя объявить переменные с одинаковым именем в двух вложенных блоках. Например, приведенный ниже фрагмент кода содержит ошибку и не будет скомпилирован.
public static void main(String[] args) {
int n;
• • •
{
int k;
int n; // ОШИБКА: переопределить переменную n во внутреннем блоке нельзя
• • •
}
}
Хотите красивую обувь, тогда посмотрите черевики чоловічі.
НА ЗАМЕТКУ С++! В С++ переменные во вложенных блоках можно переопределять. Внутреннее { определение маскирует внешнее. Это может привести к ошибкам, поэтому в Java подобный подход не реализован. |