Оператор - это символ, который сообщает компилятору выполнить определенные математические или логические манипуляции.
Эрланг имеет следующий тип операторов -
- Арифметические операторы
- Операторы отношения
- Логические операторы
- Побитовые операторы
Арифметические операторы
Язык Эрланга поддерживает нормальные арифметические операторы как любой язык. Ниже приведены операторы арифметики, доступные в Erlang.
| оператор | Описание | пример |
|---|---|---|
| + | Добавление двух операндов | 1 + 2 даст 3 |
| - | Вычитает второй операнд с первого | 1 - 2 даст -1 |
| * | Умножение обоих операндов | 2 * 2 даст 4 |
| / | Разделение числителя на знаменатель | 2/2 даст 1 |
| rem | Остаток деления первого числа на второй | 3 rem 2 даст 1 |
| div | Компонент div выполняет деление и возвращает целочисленный компонент. | 3 div 2 даст 1 |
Реляционные операторы
Реляционные операторы позволяют сравнивать объекты. Ниже приводятся реляционные операторы, доступные в Erlang.
| оператор | Описание | пример |
|---|---|---|
| == | Проверяет равенство между двумя объектами | 2 = 2 даст правду |
| знак равно | Проверяет разницу между двумя объектами | 3 / = 2 даст true |
| < | Проверяет, находится ли левый объект меньше, чем правый операнд. | 2 <3 даст истину |
| = < | Проверяет, находится ли левый объект меньше или равен правильному операнду. | 2 = <3 даст истину |
| > | Проверяет, больше ли левый объект, чем правый операнд. | 3> 2 даст правду |
| > = | Проверяет, больше ли левый объект больше или равен правильному операнду. | 3> = 2 даст true |
Логические операторы
Эти логические операторы используются для оценки булевых выражений. Ниже приведены логические операторы, доступные в Erlang.
| оператор | Описание | пример |
|---|---|---|
| or | Это логический оператор «или» | true или true даст true |
| and | Это логический оператор «и» | Истина и ложь будут давать ложные |
| not | Это логический оператор «не» | не ложь даст истину |
| xor | Это логический эксклюзивный оператор «xor» | True xor false даст true |
Побитовые операторы
Erlang предоставляет четыре побитовых оператора. Ниже приведены побитовые операторы, доступные в Erlang.
|
band |
Это побитовый оператор «и» |
| bor |
Это побитовый оператор «или» |
| bxor |
Это побитовый «xor» или «Exclusive» или оператор |
| bnot |
Это оператор побитового отрицания |
Ниже приводится таблица истинности, демонстрирующая эти операторы
| п | Q | p & q | p | Q | p ^ q |
|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 |
| 1 | 0 | 0 | 1 | 1 |
Приоритет оператора
В следующей таблице показана операционная приоритетность операторов Erlang в порядке убывания приоритета вместе со своей ассоциативностью. Приоритет операторов и ассоциативность используются для определения порядка оценки в выражениях без скобок.
| операторы | Ассоциативность |
|---|---|
| : | |
| # | |
| BNOT, не | |
| /, *, Отд, бэр, группа, и | Левый ассоциативный |
| +, -, бора, BXOR, или, исключающие | Левый ассоциативный |
| ==, / =, = <, <,> =,> |
0 комментариев