Арифметические операции. Пример: speed = 5.5;time = 4;distance = speed * time;distance = (speed ++)*time;
Операция | Смысл |
+ | Сложение |
- | Вычитание |
* | Умножение |
/ | Деление (1/2=0.5) |
% | Остаток от деления чисел (12%5.1=1.5999999999999996) |
++ | Увеличение на 1 (префиксная и постфиксная) |
-- | Уменьшение на 1 (префиксная и постфиксная) |
Пример:
speed = 5.5;time = 4;distance = speed * time;distance = (speed ++)*time;Арифметические операции в выражении вычисляются слева направо с учетом общепринятого их математического старшинства. Скобками можно изменить порядок выполнения арифметических операций в выражении.
Логические выражения
Для создания логических выражений используются операции сравнения и логические операции, применяемые к переменным любого типа.
Операции сравнения
Операция | Синтаксис | Описание |
== | a == b | Истина, если оба операнда равны |
=== | a === b | true, если значения операндов равны и сами операнды одного типа |
!= | a != b | Не равно |
!=== | a !== b | true, если значения операндов не равны и/или они не одного типа |
>= | a >= b | Больше или равно |
<= | a <= b | Меньше или равно |
> | a > b | Строго больше |
< | a < b | Строго меньше |
Логические операции
Операция | Синтаксис | Описание |
&& | a && b | логическое И; Возвращает a, если оно преобразуется к false, иначе b |
|| | a || b | логическое ИЛИ; Возвращает a, если оно преобразуется к true, иначе b |
! | !a | логическое НЕ; Если a равно true, возвращает false; если a равно false, возвращает true |
Вычисляются по укороченной схеме - если результат операции становится известным после вычисления первого операнда, то второй операнд вообще не вычисляется. В следующих выражениях второй операнд вычисляться не будет, так как результат их вычисления уже определен значением первого операнда вне зависимости от значения второго:
false && операнд2 // всегда равно falsetrue || операнд2 // всегда равно trueБитовые логические операции
Операция | Синтаксис | Описание |
И | a & b | Результирующий бит равен 1, если оба равны 1, иначе 0 |
ИЛИ | a | b | Результирующий бит равен 1, если хотя бы один бит равен 1 |
Исключающее ИЛИ | a^b | Результирующий бит равен 1, если хотя бы один бит равен 1, но не оба одновременно |
Отрицание | ~a | Инвертирует биты |
Смещение влево | a<<n | Сдвигает все биты влево на n позиций, добавляя справа нулевые |
Смещение вправо | a>>n | Сдвигает все биты вправо на n позиций, используя значение знакового бита для заполнения "освобождаемых" слева битов |
Смещение вправо с заполнением нулями | a>>>n | Сдвигает все биты вправо на n позиций, заполняя "освобождаемые" слева биты нулями |
Строковые операции
Существует только одна строковая операция - операция конкатенации (соединения) строк +, если не считать сокращенной формы операции присваивания со сложением += и сравнения строк.
string = "Моя" + "строка"; // string равно "Моястрока"Операция конкатенации строк может использоваться со смешанными типами операндов. Все операнды приводятся к строковому типу, если хотя бы один из операндов содержит строковый литерал.
"Май" + 2.003е3 результат "Май2003","Май" + t результат "Майtrue", если переменная t содержит булево значение true."1" + "1.1" результат "11.1""1" + 1.1 результат "11.1"Дата добавления: 2016-02-11; просмотров: 1178;