ЛОГИЧЕСКИЕ ОПЕРАТОРЫ
ОПЕРАТОРЫ СРАВНЕНИЯ
Арифметические операторы.
В java существуют следующие арифметические операторы: +, -, *, /, %, ++, --.
Первые пять операторов являются бинарными, т.е. применяются к двум аргументам.
Последние два оператора являются унарными, т.е. применяются к одному аргументу.
При вычислении любого бинарного оператора оба его аргумента приводятся к одному типу, если это необходимо.
· оператор / в зависимости от типов и аргументов работает либо как деление нацело (при делении двух целых аргументов), либо как деление с остатком.
пример:
(int)(5/2.0) \\ 2 (т.к. 5/2.0=2.5 и (int)(2.5)=2, следовательно, берет целую часть от числа)
(int)5/2.0 \\ 2.5 (т.к. (int)5=5 и 5/2.0=2.5)
(int)4.6/2.0 \\ 2.0 (т.к. (int)(4.6)=4 и 4/2.0=2.0)
5/2 \\ 2
5/2.0 \\2.5
· оператор % вычисляет остаток от деления 1-ого аргумента на 2-ой.
пример:
5%2 \\ 1(5 делится на 2 с остатком - 1)
13%5 \\ 3
25%6 \\ 1
Операции инкремента (++) и декремента (--).
++ применяется к переменным целого типа и увеличивает на 1.
-- применяется к переменным целого типа и уменьшает на 1.
пример:
int k;
k=13;
k++;
System.out.print(k); \\ 14
существует префиксная и постфиксная форма данных операторов.
++а – префикс.
а++ - постфикс.
Разница между формами проявляется, когда инкременты являются частью более сложного выражения.
Префиксный инкремент вычисляется до всего выражения, а постфиксный – после.
пример:
int a=5;
int b;
b=a++_+3;
System.out.print(a++”_”+b); \\ сначала считает, а потом увеличивает \\ 6 8
int a=5;
int b;
b=++а_+3;
System.out.print(a++”_”+b); \\ сначала увеличивает, а потом считает \\ 6 9
Аналогично с декрементом (- -).
Приоритет арифметических операций таков:
1) *, / , %
2) + , -
3) =
Приоритет операторов можно скорректировать с помощью круглых скобок. Они заставляют выполняться раньше других любую из перечисленных операций, кроме а++ и а—
>
>=
<
<=
== (оператор эквивалентности)
!= ( не равно)
Любой оператор сравнения в качестве своего результата возвращают логическое значение true или false.
Все операторы сравнения являются бинарными.
Первые 4 оператора применяются только к числовым аргументам.
Последние 2 оператора применяются как к числовым, так и к логическим аргументам.
пример:
int a=51;
boolean t;
t=3>a; \\ false
t=a+8!=60; \\ true
boolean s=false;
t=s==true; \\ false
t=a+3>18!=false; \\ true
true
Первые 4 оператора выполняются раньше последних двух и все арифметические операторы выполняются раньше операторов сравнения.
Приоритет можно регулировать скобками.
&& - логическое «и», это бинарный оператор , который применяется к двум логическим аргументам и возвращает истинное значение в том и только в том случает, когда оба аргумента истинны.
|| - логическое «или», это бинарный оператор, возвращающий истинное значение тогда и только тогда, когда хотя бы один из аргументов истинный
! – отрицание, Это унарный оператор, который меняет истинность своего аргумента на противоположный.
пример:
boolean x=true,y=false,z;
z=x||y; \\ true
x=z||y||true; \\ true
z=x||y&&false||x; \\ true
z=x||y&&!z; \\ true