Арифметические операции. Пример: 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; просмотров: 1308;
