Operatori Bicep

Questo articolo descrive gli operatori Bicep. Gli operatori vengono usati per calcolare valori, confrontare valori o valutare le condizioni. Esistono sei tipi di operatori Bicep:

Precedenza e associatività degli operatori

Gli operatori seguenti sono elencati in ordine decrescente di precedenza (maggiore è la posizione più alta della precedenza). Gli operatori indicati sullo stesso livello hanno la stessa precedenza.

Simbolo Tipo di operazione Associatività
( ) [ ] . :: Parentesi, indicizzatori di matrici, funzioni di accesso alle proprietà e funzione di accesso alle risorse nidificate Da sinistra a destra
! - Unario Da destra a sinistra
% * / Moltiplicazione Da sinistra a destra
+ - Additive Da sinistra a destra
<= < > >= Relazionale Da sinistra a destra
== != =~ !~ Equality Da sinistra a destra
&& AND logico Da sinistra a destra
|| OR logico Da sinistra a destra
?? Coalesce Da sinistra a destra
? : Espressione condizionale (ternaria) Da destra a sinistra

Parentesi

Racchiudere un'espressione tra parentesi consente di eseguire l'override della precedenza dell'operatore Bicep predefinito. Ad esempio, l'espressione x + y / z valuta prima la divisione e quindi l'addizione. Tuttavia, l'espressione (x + y) / z valuta prima l'addizione e quindi la divisione.

Funzione di accesso

Gli operatori della funzione di accesso vengono usati per accedere alle risorse annidate e alle proprietà sugli oggetti.

Operatore Nome Descrizione
[] Funzione di accesso Index Accedere a un elemento di un array o di una proprietà in un oggetto.
. Funzione di accesso alle funzioni Chiamare una funzione su una risorsa.
:: Funzione di accesso alle risorse nidificata Accedere a una risorsa nidificata dall'esterno della risorsa padre.
. Funzioni di accesso alle proprietà Proprietà di accesso di un oggetto.

Confronto

Gli operatori di confronto confrontano i valori e restituiscono true o false.

Operatore Nome Descrizione
>= Maggiore o uguale a Valuta se il primo valore è maggiore o uguale al secondo valore.
> Maggiore di Valuta se il primo valore è maggiore del secondo valore.
<= Minore o uguale a Valuta se il primo valore è minore o uguale al secondo valore.
< Minore di Valuta se il primo valore è minore del secondo valore.
== Equals Valuta se due valori sono uguali.
!= Diverso da Valuta se due valori non sono uguali.
=~ Uguale senza distinzione tra maiuscole e minuscole Ignora la distinzione tra maiuscole e minuscole per determinare se due valori sono uguali.
!~ Non uguale senza distinzione tra maiuscole e minuscole Ignora la distinzione tra maiuscole e minuscole per determinare se due valori non sono uguali.

Logico

Gli operatori logici valutano valori booleani, restituiscono valori non Null o valutano un'espressione condizionale.

Operatore Nome Descrizione
&& And Restituisce true se tutti i valori sono true.
|| Or Restituisce true se uno dei due valori è true.
! Not Nega un valore booleano. Accetta un operando.
?? Coalesce Restituisce il primo valore non Null.
? : Espressione condizionale Valuta una condizione per true o false e restituisce un valore.

Null-forgiving

L'operatore null-forgiving elimina tutti gli avvisi nullable per l'espressione precedente.

Operatore Nome Descrizione
! Null-forgiving Elimina tutti gli avvisi nullable per l'espressione precedente.

Numerico

Gli operatori numerici usano numeri interi per eseguire calcoli e restituire valori interi.

Operatore Nome Descrizione
* Per Moltiplica due numeri interi.
/ Divide Divide un numero intero per un numero intero.
% Modulo Divide un numero intero per un numero intero e restituisce il resto.
+ Aggiunta Addiziona due numeri interi.
- Sottrai Sottrae un numero intero da un altro numero intero. Accetta due operandi.
- Meno (unario) Moltiplica un numero intero per -1. Accetta un operando.

Nota

Sottrazione e meno usano lo stesso operatore. La funzionalità è diversa perché la sottrazione usa due operandi e meno usa un solo operando.

Safe-dereference

L'operatore di deferenziazione sicura consente di evitare errori che possono verificarsi quando si tenta di accedere a proprietà o elementi senza conoscere correttamente la loro esistenza o valore.

Operatore Nome Descrizione
<base>.?<property>, <base>[?<index>] Safe-dereference Applica un'operazione di accesso dei membri degli oggetti o di accesso degli elementi di un array al relativo operando solo se il suddetto restituisce un valore diverso da Null; in caso contrario, restituisce null.

Spread

L'operatore spread viene usato per espandere una matrice o un oggetto iterabile in singoli elementi. L'operatore spread consente di modificare facilmente matrici o oggetti distribuendo gli elementi o le proprietà in nuove matrici o oggetti.

Operatore Nome Descrizione
... Spread Consente l'espansione di matrici iterabili e oggetti in singoli elementi o proprietà.

Passaggi successivi