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
- Per creare un file Bicep, vedere Avvio rapido: Creare file Bicep con Visual Studio Code.
- Per informazioni su come risolvere gli errori di tipo Bicep, consultare Qualsiasi funzione per Bicep.
- Per confrontare la sintassi per Bicep e per JSON, consultare Confronto tra JSON e Bicep per modelli.
- Per esempi di funzioni Bicep, consultare Funzioni Bicep.