Operadores de comparação Bicep
Os operadores de comparação comparam valores e retornam true
ou false
. Para executar os exemplos, use o CLI do Azure ou o Azure PowerShell para implantar um arquivo Bicep.
Operador | Nome |
---|---|
>= |
Maior ou igual a |
> |
Maior que |
<= |
Menor ou igual a |
< |
Menor que |
== |
Igual a |
!= |
Diferente de |
=~ |
Igualar maiúsculas de minúsculas |
!~ |
Não igualar maiúsculas de minúsculas |
Maior ou igual a >=
operand1 >= operand2
Avalia se o primeiro valor é maior ou igual ao segundo.
Operandos
Operando | Type | Descrição |
---|---|---|
operand1 |
inteiro, cadeia de caracteres | Primeiro valor na comparação. |
operand2 |
inteiro, cadeia de caracteres | Segundo valor na comparação. |
Retornar valor
Se o primeiro valor é maior ou igual ao segundo, retorna true
. Caso contrário, false
será retornado.
Exemplo
Um par de inteiros e o par de cadeias de caracteres são comparados.
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
Saída do exemplo:
Nome | Tipo | Valor |
---|---|---|
intGtE |
booleano | true |
stringGtE |
booleano | true |
Maior que >
operand1 > operand2
Avalia se o primeiro valor é maior que o segundo.
Operandos
Operando | Type | Descrição |
---|---|---|
operand1 |
inteiro, cadeia de caracteres | Primeiro valor na comparação. |
operand2 |
inteiro, cadeia de caracteres | Segundo valor na comparação. |
Retornar valor
Se o primeiro valor é maior que o segundo, retorna true
. Caso contrário, false
será retornado.
Exemplo
Um par de inteiros e o par de cadeias de caracteres são comparados.
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
Saída do exemplo:
O e em bend torna a primeira cadeia de caracteres maior.
Nome | Tipo | Valor |
---|---|---|
intGt |
booleano | true |
stringGt |
booleano | true |
Menor ou igual a <=
operand1 <= operand2
Avalia se o primeiro valor é igual ou menor que o segundo.
Operandos
Operando | Type | Descrição |
---|---|---|
operand1 |
inteiro, cadeia de caracteres | Primeiro valor na comparação. |
operand2 |
inteiro, cadeia de caracteres | Segundo valor na comparação. |
Retornar valor
Se o primeiro valor é igual ou menor que o segundo, retorna true
. Caso contrário, false
será retornado.
Exemplo
Um par de inteiros e o par de cadeias de caracteres são comparados.
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
Saída do exemplo:
Nome | Tipo | Valor |
---|---|---|
intLtE |
booleano | true |
stringLtE |
booleano | true |
Menor que <
operand1 < operand2
Avalia se o primeiro valor é menor que o segundo.
Operandos
Operando | Type | Descrição |
---|---|---|
operand1 |
inteiro, cadeia de caracteres | Primeiro valor na comparação. |
operand2 |
inteiro, cadeia de caracteres | Segundo valor na comparação. |
Retornar valor
Se o primeiro valor é menor que o segundo, retorna true
. Caso contrário, false
será retornado.
Exemplo
Um par de inteiros e o par de cadeias de caracteres são comparados.
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
Saída do exemplo:
A cadeia de caracteres é true
porque as letras minúsculas são menos numerosas que as letras maiúsculas.
Nome | Tipo | Valor |
---|---|---|
intLt |
booleano | true |
stringLt |
booleano | true |
Igual a ==
operand1 == operand2
Avalia se os valores são iguais. A comparação diferencia maiúsculas de minúsculas.
Operandos
Operando | Type | Descrição |
---|---|---|
operand1 |
cadeia de caracteres, inteiro, booliano, matriz, objeto | Primeiro valor na comparação. |
operand2 |
cadeia de caracteres, inteiro, booliano, matriz, objeto | Segundo valor na comparação. |
Retornar valor
Se os operandos são iguais, retorna true
. Se os operandos são diferentes, retorna false
.
Exemplo
Pares de inteiros, cadeias de caracteres e boolianos são comparados.
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
Saída do exemplo:
Nome | Tipo | Valor | Observação |
---|---|---|---|
intEqual |
boolean | true | |
stringEqual |
booleano | false | O resultado é false porque a comparação diferencia maiúsculas de minúsculas. |
boolEqual |
boolean | true |
Ao comparar matrizes, as duas matrizes devem ter os mesmos elementos e ordem. As matrizes não precisam ser atribuídas umas às outras.
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
Saída do exemplo:
Nome | Tipo | Valor |
---|---|---|
sameElements | bool | true |
assignArray | bool | true |
differentOrder | bool | false |
Ao comparar objetos, os nomes e valores da propriedade devem ser iguais. As propriedades não precisam ser definidas na mesma ordem.
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
Saída do exemplo:
Nome | Tipo | Valor |
---|---|---|
sameObjects | bool | true |
differentPropertyOrder | bool | true |
assignObject | bool | true |
differentValues | bool | false |
Diferente de !=
operand1 != operand2
Avalia se dois valores são diferentes.
Operandos
Operando | Type | Descrição |
---|---|---|
operand1 |
cadeia de caracteres, inteiro, booliano, matriz, objeto | Primeiro valor na comparação. |
operand2 |
cadeia de caracteres, inteiro, booliano, matriz, objeto | Segundo valor na comparação. |
Retornar valor
Se os operandos não são iguais, true
retorna. Se os operandos são iguais, retorna false
.
Exemplo
Pares de inteiros, cadeias de caracteres e boolianos são comparados.
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
Saída do exemplo:
Nome | Tipo | Valor |
---|---|---|
intNotEqual |
booleano | true |
stringNotEqual |
booleano | true |
boolNotEqual |
booleano | true |
Para matrizes e objetos, veja os exemplos em equals.
Igualar maiúsculas de minúsculas =~
operand1 =~ operand2
Ignora maiúsculas e minúsculas para determinar se os dois valores são iguais.
Operandos
Operando | Type | Descrição |
---|---|---|
operand1 |
string | Primeira cadeia de caracteres na comparação. |
operand2 |
string | Segunda cadeia de caracteres na comparação. |
Retornar valor
Se as cadeias de caracteres são iguais, retorna true
. Caso contrário, false
será retornado.
Exemplo
Compara cadeias de caracteres que usam letras maiúsculas e minúsculas.
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
Saída do exemplo:
Nome | Tipo | Valor |
---|---|---|
strEqual1 |
booleano | true |
strEqual2 |
booleano | false |
Não igualar maiúsculas de minúsculas !~
operand1 !~ operand2
Ignora maiúsculas e minúsculas para determinar se os dois valores são diferentes.
Operandos
Operando | Type | Descrição |
---|---|---|
operand1 |
string | Primeira cadeia de caracteres na comparação. |
operand2 |
string | Segunda cadeia de caracteres na comparação. |
Retornar valor
Se as cadeias de caracteres são diferentes, retorna true
. Caso contrário, false
será retornado.
Exemplo
Compara cadeias de caracteres que usam letras maiúsculas e minúsculas.
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
Saída do exemplo:
Nome | Tipo | Valor |
---|---|---|
strNotEqual1 |
booleano | true |
strNotEqual2 |
booleano | false |
Próximas etapas
- Para criar um arquivo Bicep, consulte Início rápido: criar arquivos Bicep com o Visual Studio Code.
- Para obter informações sobre como resolver erros de tipo Bicep, confira Qualquer função para Bicep.
- Para comparar a sintaxe para Bicep e JSON, confira Comparar JSON e Bicep para modelos.
- Para ver exemplos de funções Bicep, consulte Funções Bicep.