С. Сухов - Основы программирования на Java
- Название:Основы программирования на Java
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
С. Сухов - Основы программирования на Java краткое содержание
Учебное пособие разработано в соответствии с программой курса «Информатика» и предназначено для студентов радиотехнического факультета, но может использоваться и студентами других специальностей. Рассматриваются вопросы программирования на языке Java.
Направлено на закрепление знаний по курсу «Информатика», читаемого по специальности 210406 «Сети связи и системы коммутации». Учебное пособие подготовлено на кафедре «САПР».
Основы программирования на Java - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Общая форма оператора if-then-else такова:
Выражение1 ? Выражение2 : выражениеЗ
В качестве первого операнда — «выражение 1» — может быть использовано любое выражение, результатом которого является значение типа boolean. Если результат равен true, то выполняется оператор, заданный вторым операндом, то есть «выражение2». Если же первый операнд равен false, то выполняется третий операнд — «выражениеЗ». Второй и третий операнды, то есть «выра- жение2» и «выражениеЗ», должны возвращать значения одного типа и не должны иметь тип void. В приведенной ниже программе этот оператор используется для проверки делителя перед выполнением операции деления. В случае нулевого делителя возвращается значение 0.
class Ternary {
public static void main(String args[]) {
int a = 42;
int b = 2;
int с = 99;
int d = 0;
int e = (b == 0) ? 0 : (a / b);
int f = (d == 0) ? 0 : (c / d);
System.out.print("a = " + a);
System.out.print("b = " + b);
System.out.print("c = " + c);
System.out.print("d = " + d);
System.out.print("a / b = " + e);
System.out.println("c / d = " + f);
}
}
При выполнении этой программы исключительной ситуации деления на нуль не возникает, и выводятся следующие результаты:
a = 42
b = 2
c = 99
d = 0
a/b = 21
c/d = 0
В Java действует определенный порядок, или приоритет, операций. В элементарной алгебре умножение и деление имеют более высокий приоритет, чем сложение и вычитание. В программировании также приходится следить за приоритетами операций. В таблице 4.7. указаны в порядке убывания приоритеты всех операций языка Java.
Таблица 4.7. Таблица приоритетов всех операций
№ |
Высший |
1 |
|
2 |
~ ! |
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
& |
9 |
^ |
10 |
| |
11 |
&& |
12 |
|| |
13 |
? : |
14 |
|
Низший |
В первой строке таблицы приведены три необычных оператора, о которых мы пока не говорили. Круглые скобки () используются для явной установки приоритета. Квадратные скобки [] используются для индексирования переменной-массива. Оператор . (точка) используется для выделения элементов из ссылки на объект.
5. УПРАВЛЕНИЕ ВЫПОЛНЕНИЕМ ПРОГРАММЫ
Управление выполнением (flow control) позволяет изменять последовательность выполнения фрагментов программы, выбирая в зависимости от состояния данных ту или иную ветвь кода. Ветвление, циклы и вызовы подпрограмм - это разновидности управления выполнением программы. Все наши программы до сих пор были полностью линейны - операторы выполнялись строго по порядку, один за другим. В более сложных программах часто требуется, чтобы в зависимости от условий выполнялись одни операторы, а другие при этом пропускались. Для управления выполнением программного кода в Java имеется несколько возможностей, основанных на использовании условных операторов.
Конструкция if-elseпозволяет в зависимости от некоторого логического значения выполнять различные части программного кода. В обобщенной форме этот оператор записывается следующим образом:
if (логическое выражение) оператор 1; [else оператор2;]
Раздел elseнеобязателен. На месте любого из операторовможет стоять составной оператор,заключенный в фигурные скобки. Логическое выражениеэто любое выражение, возвращающее значение типа boolean. Это может быть и простая переменная типа boolean.
int bytesAvailable;
//...
if (bytesAvailable > 0) {
ProcessData(); //Обработка данных
bytesAvailable -= n;
}
else
waitForMoreData(); //Ждать данные
В качестве логического выраженияможно использовать выражение с операторами отношения. Это позволяет выбирать ту или иную ветвь кода в зависимости от результатов сравнения. А вот полная программа, в которой для определения, к какому времени года относится тот или иной месяц, используются операторы if-else.
class IfElse {
public static void main(String args[]) {
int month = 4;
String season;
if (month == 12 || month == 1 || month == 2)
{
season = "Winter";
}
else if (month ==3 || month == 4 || month == 5)
{
season = "Spring";
}
else if (month == 6 || month == 7 || month == 8)
{
season = "Summer";
}
else if (month == 9 || month == 10 || month == 11)
{
season = "Autumn";
}
else
{
season = "Bogus Month";
}
System.out.println( "April is in the " + season + ".");
}
}
После выполнения программы вы должны получить следующий результат:
April is in the Spring.
Оператор breakсообщает исполняющей среде, что следует прекратить выполнение именованного блока и передать управление оператору, следующему за данным блоком. Для именования блоков в языке Java используются метки. Оператор breakпри работе с циклами и в операторах switchможет использоваться без метки. В таком случае подразумевается выход из текущего блока. Для именования блока перед ним помещается метка, состоящая из идентификатора и следующего за ним двоеточия. После объявления метки на нее можно ссылаться в операторе break.При этом управление передается оператору, расположенному за поименованным блоком.
Например, в следующей программе имеется три вложенных блока, и у каждого своя уникальная метка. Оператор break, стоящий во внутреннем блоке, вызывает переход на оператор, следующий за блоком Ь. При этом пропускаются два оператора println.
class Break {
public static void main(String args[]) {
boolean t = true;
a: {
b: {
c: {
System.out.println("ITepefl break");
if(t) break b;
System.out.println("He будет выполнено "); }
System.out.println("He будет выполнено "); }
System.out.println("noane b");
}
} }
В результате исполнения программы вы получите следующий результат:
До break
После b
Оператор switchобеспечивает ясный способ переключения между различными частями программного кода в зависимости от значения одной переменной или выражения. Общая форма этого оператора такова:
switch ( выражение )
{
case значение1: break;
case значение2: break;
case значениеN: break;
default:
}
Интервал:
Закладка: