Erlang - Operatori
Un operatore è un simbolo che dice al compilatore di eseguire manipolazioni matematiche o logiche specifiche.
Erlang ha il seguente tipo di operatori:
- Operatori aritmetici
- Operatori relazionali
- Operatori logici
- Operatori bit per bit
Operatori aritmetici
Il linguaggio Erlang supporta i normali operatori aritmetici come qualsiasi lingua. Di seguito sono riportati gli operatori aritmetici disponibili in Erlang.
| Operatore | Descrizione | Esempio |
|---|---|---|
| + | Aggiunta di due operandi | 1 + 2 darà 3 |
| - | Sottrae il secondo operando dal primo | 1-2 darà -1 |
| * | Moltiplicazione di entrambi gli operandi | 2 * 2 darà 4 |
| / | Divisione del numeratore per denominatore | 2/2 darà 1 |
| rem | Resto della divisione del primo numero per il secondo | 3 rem 2 darà 1 |
| div | Il componente div eseguirà la divisione e restituirà il componente intero. | 3 div 2 darà 1 |
Operatori relazionali
Gli operatori relazionali consentono il confronto di oggetti. Di seguito sono riportati gli operatori relazionali disponibili in Erlang.
| Operatore | Descrizione | Esempio |
|---|---|---|
| == | Verifica l'uguaglianza tra due oggetti | 2 = 2 darà vero |
| / = | Verifica la differenza tra due oggetti | 3 / = 2 darà vero |
| < | Verifica se l'oggetto sinistro è minore dell'operando destro. | 2 <3 darà vero |
| = < | Verifica se l'oggetto sinistro è minore o uguale all'operando destro. | 2 = <3 darà vero |
| > | Verifica se l'oggetto sinistro è maggiore dell'operando destro. | 3> 2 darà vero |
| > = | Verifica se l'oggetto sinistro è maggiore o uguale all'operando destro. | 3> = 2 darà vero |
Operatori logici
Questi operatori logici vengono utilizzati per valutare le espressioni booleane. Di seguito sono riportati gli operatori logici disponibili in Erlang.
| Operatore | Descrizione | Esempio |
|---|---|---|
| o | Questo è l'operatore logico "or" | vero o vero darà vero |
| e | Questo è l'operatore logico "and" | Vero e falso daranno falso |
| non | Questo è l'operatore logico "non" | non falso darà vero |
| xor | Questo è l'operatore logico esclusivo "xor" | True xor false darà vero |
Operatori bit per bit
Erlang fornisce quattro operatori bit per bit. Di seguito sono riportati gli operatori bit per bit disponibili in Erlang.
| Sr.No. | Operatore e descrizione |
|---|---|
| 1 |
band Questo è l'operatore "and" bit per bit |
| 2 |
bor Questo è l'operatore "or" bit per bit |
| 3 |
bxor Questo è l'operatore "xor" o Exclusive or bit per bit |
| 4 |
bnot Questo è l'operatore di negazione bit per bit |
Di seguito è riportata la tabella della verità che mostra questi operatori:
| p | 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 |
Precedenza operatore
La tabella seguente mostra la precedenza degli operatori per gli operatori Erlang in ordine decrescente di priorità insieme alla loro associatività. La precedenza e l'associatività degli operatori vengono utilizzate per determinare l'ordine di valutazione nelle espressioni senza parentesi.
| Operatori | Associatività |
|---|---|
| : | |
| # | |
| bnot, no | |
| /, *, div, rem, band e | Associativo di sinistra |
| +, -, bor, bxor o, xor | Associativo di sinistra |
| ==, / =, = <, <,> =,> |
