Operatori di confronto Bicep

Gli operatori di confronto confrontano i valori e restituiscono true o false. Per eseguire gli esempi, usare l'interfaccia della riga di comando di Azure o Azure PowerShell per distribuire un file Bicep.

Operatore Nome
>= Maggiore o uguale a
> Maggiore di
<= Minore o uguale a
< Minore di
== Equals
!= Non uguale a
=~ Uguale senza distinzione tra maiuscole e minuscole
!~ Non uguale senza distinzione tra maiuscole e minuscole

Maggiore o uguale a >=

operand1 >= operand2

Valuta se il primo valore è maggiore o uguale al secondo valore.

Operandi

Operand Tipo Descrizione
operand1 integer, string Primo valore nel confronto.
operand2 integer, string Secondo valore nel confronto.

Valore restituito

Restituisce true se il primo valore è maggiore o uguale al secondo valore. In caso contrario, viene restituito false.

Esempio

Vengono confrontati una coppia di numeri interi e coppie di stringhe.

param firstInt int = 10
param secondInt int = 5

param firstString string = 'A'
param secondString string = 'A'

output intGtE bool = firstInt >= secondInt
output stringGtE bool = firstString >= secondString

Output dell'esempio:

Nome Type Valore
intGtE boolean true
stringGtE boolean true

Maggiore di >

operand1 > operand2

Valuta se il primo valore è maggiore del secondo valore.

Operandi

Operand Tipo Descrizione
operand1 integer, string Primo valore nel confronto.
operand2 integer, string Secondo valore nel confronto.

Valore restituito

Restituisce true se il primo valore è maggiore del secondo valore. In caso contrario, viene restituito false.

Esempio

Vengono confrontati una coppia di numeri interi e coppie di stringhe.

param firstInt int = 10
param secondInt int = 5

param firstString string = 'bend'
param secondString string = 'band'

output intGt bool = firstInt > secondInt
output stringGt bool = firstString > secondString

Output dell'esempio:

e in piegatura rende la prima stringa maggiore.

Nome Type Valore
intGt boolean true
stringGt boolean true

Minore o uguale a <=

operand1 <= operand2

Valuta se il primo valore è minore o uguale al secondo valore.

Operandi

Operand Tipo Descrizione
operand1 integer, string Primo valore nel confronto.
operand2 integer, string Secondo valore nel confronto.

Valore restituito

Restituisce true se il primo valore è minore o uguale al secondo valore. In caso contrario, viene restituito false.

Esempio

Vengono confrontati una coppia di numeri interi e coppie di stringhe.

param firstInt int = 5
param secondInt int = 10

param firstString string = 'demo'
param secondString string = 'demo'

output intLtE bool = firstInt <= secondInt
output stringLtE bool = firstString <= secondString

Output dell'esempio:

Nome Type Valore
intLtE boolean true
stringLtE boolean true

Minore di <

operand1 < operand2

Valuta se il primo valore è minore del secondo valore.

Operandi

Operand Tipo Descrizione
operand1 integer, string Primo valore nel confronto.
operand2 integer, string Secondo valore nel confronto.

Valore restituito

Restituisce true se il primo valore è minore del secondo valore. In caso contrario, viene restituito false.

Esempio

Vengono confrontati una coppia di numeri interi e coppie di stringhe.

param firstInt int = 5
param secondInt int = 10

param firstString string = 'demo'
param secondString string = 'Demo'

output intLt bool = firstInt < secondInt
output stringLt bool = firstString < secondString

Output dell'esempio:

La stringa è true perché le lettere minuscole sono minori delle lettere maiuscole.

Nome Type Valore
intLt boolean true
stringLt boolean true

Uguale a ==

operand1 == operand2

Valuta se i valori sono uguali. Il confronto fa distinzione tra maiuscole e minuscole.

Operandi

Operand Tipo Descrizione
operand1 stringa, integer, boolean, matrice, oggetto Primo valore nel confronto.
operand2 stringa, integer, boolean, matrice, oggetto Secondo valore nel confronto.

Valore restituito

Se gli operandi sono uguali, viene restituito true. Se gli operandi sono diversi, viene restituito false.

Esempio

Vengono confrontate coppie di numeri interi, stringhe e booleani.

param firstInt int = 5
param secondInt int = 5

param firstString string = 'demo'
param secondString string = 'Demo'

param firstBool bool = true
param secondBool bool = true

output intEqual bool = firstInt == secondInt
output stringEqual bool = firstString == secondString
output boolEqual bool = firstBool == secondBool

Output dell'esempio:

Nome Type Valore Nota
intEqual boolean true
stringEqual boolean false Il risultato è false dovuto al fatto che il confronto fa distinzione tra maiuscole e minuscole.
boolEqual boolean true

Quando si confrontano matrici, le due matrici devono avere gli stessi elementi e lo stesso ordine. Le matrici non devono essere assegnate tra loro.

var array1 = [
  1
  2
  3
]

var array2 = [
  1
  2
  3
]

var array3 = array2

var array4 = [
  3
  2
  1
]

output sameElements bool = array1 == array2 // returns true because arrays are defined with same elements
output assignArray bool = array2 == array3 // returns true because one array was defined as equal to the other array
output differentOrder bool = array4 == array1 // returns false because order of elements is different

Output dell'esempio:

Nome Type Valore
sameElements bool true
assignArray bool true
differentOrder bool false

Quando si confrontano oggetti, i nomi e i valori delle proprietà devono essere uguali. Le proprietà non devono essere definite nello stesso ordine.

var object1 = {
  prop1: 'val1'
  prop2: 'val2'
}

var object2 = {
  prop1: 'val1'
  prop2: 'val2'
}

var object3 = {
  prop2: 'val2'
  prop1: 'val1'
}

var object4 = object3

var object5 = {
  prop1: 'valX'
  prop2: 'valY'
}

output sameObjects bool = object1 == object2 // returns true because both objects defined with same properties
output differentPropertyOrder bool = object3 == object2 // returns true because both objects have same properties even though order is different
output assignObject bool = object4 == object1 // returns true because one object was defined as equal to the other object
output differentValues bool = object5 == object1 // returns false because values are different

Output dell'esempio:

Nome Type Valore
sameObjects bool true
differentPropertyOrder bool true
assignObject bool true
differentValues bool false

Diverso da !=

operand1 != operand2

Valuta se due valori non sono uguali.

Operandi

Operand Tipo Descrizione
operand1 stringa, integer, boolean, matrice, oggetto Primo valore nel confronto.
operand2 stringa, integer, boolean, matrice, oggetto Secondo valore nel confronto.

Valore restituito

Se gli operandi non sono uguali, viene restituito true. Se gli operandi sono uguali, viene restituito false.

Esempio

Vengono confrontate coppie di numeri interi, stringhe e booleani.

param firstInt int = 10
param secondInt int = 5

param firstString string = 'demo'
param secondString string = 'test'

param firstBool bool = false
param secondBool bool = true

output intNotEqual bool = firstInt != secondInt
output stringNotEqual bool = firstString != secondString
output boolNotEqual bool = firstBool != secondBool

Output dell'esempio:

Nome Type Valore
intNotEqual boolean true
stringNotEqual boolean true
boolNotEqual boolean true

Per matrici e oggetti, vedere esempi in uguali.

Uguale senza distinzione tra maiuscole e minuscole =~

operand1 =~ operand2

Ignora la distinzione tra maiuscole e minuscole per determinare se i due valori sono uguali.

Operandi

Operand Tipo Descrzione
operand1 stringa Prima stringa nel confronto.
operand2 string Seconda stringa nel confronto.

Valore restituito

Se le stringhe sono uguali, viene restituito true. In caso contrario, viene restituito false.

Esempio

Confronta le stringhe che usano lettere maiuscole e minuscole.

param firstString string = 'demo'
param secondString string = 'DEMO'

param thirdString string = 'demo'
param fourthString string = 'TEST'

output strEqual1 bool = firstString =~ secondString
output strEqual2 bool = thirdString =~ fourthString

Output dell'esempio:

Nome Type Valore
strEqual1 boolean true
strEqual2 boolean false

Non uguale senza distinzione maiuscole/minuscole !~

operand1 !~ operand2

Ignora la distinzione tra maiuscole e minuscole per determinare se i due valori non sono uguali.

Operandi

Operand Tipo Descrzione
operand1 stringa Prima stringa nel confronto.
operand2 string Seconda stringa nel confronto.

Valore restituito

Se le stringhe non sono uguali, viene restituito true. In caso contrario, viene restituito false.

Esempio

Confronta le stringhe che usano lettere maiuscole e minuscole.

param firstString string = 'demo'
param secondString string = 'TEST'

param thirdString string = 'demo'
param fourthString string = 'DeMo'

output strNotEqual1 bool = firstString !~ secondString
output strEqual2 bool = thirdString !~ fourthString

Output dell'esempio:

Nome Type Valore
strNotEqual1 boolean true
strNotEqual2 boolean false

Passaggi successivi