Выражения действительного типа
В выражениях действительного типа используются операнды целого и действительного типов Java, связанные знаками арифметических операций и круглыми скобками.
К арифметическим операциям относятся:
+ сложение 3.2 + 2.5 = 5.7
- вычитания 5.8 – 2.5 = 3.3
* умножение 3.5 * 2.0 = 7.0
/ деление 5.5 / 2.0 = 2.75
% остаток от деления 5.2 % 2.3 = 0.6
2.3 % 5.2 = 2.3
++ инкремент x++ = x + 1.0
++x = x + 1.0
-- декремент x-- = x – 1.0
--x = x – 1.0
Приоритет и порядок выполнения операций в выражениях действительного типа соответствует приоритету и порядку их выполнения в выражениях целого типа. Если в выражении действительного типа встречаются операнды различных типов, то производится автоматическое преобразование типов к одному, самому длинному:
если хотя бы один из операндов имеет тип double, то и другие преобразуются в операнды типа double, и результат будет иметь тоже тип double.
Примеры записи выражений действительного типа
2.5 + 0.97*b*b
0.2e-4*x – 5.0e-12*y
Примеры вычислений выражений действительного типа:
Math.ceil(Math.log(1.0)) + Math.ceil(Math.exp(0.0))- Math.round(Math.pow(2.0,0)) = 0
Math.floor(Math.pow(Math.pow(1.6,2), Math.pow(2.0,1))) - Math.ceil(Math.pow(1.41,2)) = 4
Math.ceil(Math.sqrt(2.0)) + Math.floor(Math.sqrt('D'-'A')) - (3|4)
= -4
Math.ceil(Math.sqrt(10.0)) - Math.floor(Math.sqrt(3.0)) - 3%5 = 0
Выражения логического типа
В языке Java используются три логические операции:
!НЕ отрицание, инверсия,
||ИЛИ логическое сложение, дизъюнкция,
&&И логическое умножение, конъюнкция
и шесть операций сравнения:
==равно,
!= не равно,
> больше,
>= больше или равно,
< меньше,
<= меньше или равно.
Внимание! Операция равно в Java, как и в Си обозначается двумя знаками равенства: ==
Результатами логических операций и операций сравнения могут быть две константы:
true – истина,
false – ложь.
Приоритет выполнения операций:
!НЕ
>, >=, <, <= операции сравнения
==, != операции равенства
&& логическое И
|| логическое ИЛИ
Операторы присваивания
Операторы присваивания служат для вычисления значений выражений и присваивания вычисленных значений переменным.
Оператор присваивания имеет вид:
x = s;
где x – имя переменной,
s – выражение того же типа,
= - знак присваивания.
Оператор присваивания дает команду компьютеру на вычисление значения выражения справа от знака присваивания и запись вычисленного значения в ячейку памяти, отведенную для хранения переменной, стоящей слева от знака присваивания. При этом прежнее значение переменной аннулируется. Поэтому в программировании можно использовать, например, такие операторы присваивания:
y = y + 5;
Выполняя его, компьютер возьмет старое значение переменной y и увеличит его на 5, после чего полученное новое значение этой переменной снова запишет в отведенную для нее ячейку памяти.
Начинающий программист может сделать ошибку, записав слева от знака присваивания не имя переменной, а константу или выражение:
10.5 = x;
a + b = y + 5.2;
Присваивание в Java может быть организовано несколькими способами:
как оператор присваивания:
a = 5;
как оператор-выражение:
a++;
как операция, встречающаяся в выражении несколько раз, при этом операции присваивания выполняются справа налево:
a = b = c = 5;
как операция, если стоит внутри других операций:
a = (b = 1) + 4;
Сначала переменной b будет присвоено значение 1, а затем к результату, полученному в скобках, будет прибавлено 4. Таким образом, одним оператором присваивания будут присвоены значения сразу двум переменным:
b = 1, a = 5
Операции присваивания, изменяющие старые значения переменных, реализуются в Javaобъединенными арифметическими или побитовыми операциями присваивания: