Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Os operadores lógicos avaliam valores boolianos, retornam valores não nulos ou avaliam uma expressão condicional. Para executar os exemplos, use o CLI do Azure ou o Azure PowerShell para implantar um arquivo Bicep.
| Operador | Nome |
|---|---|
&& |
And |
|| |
Or |
! |
Not |
?? |
Coalesce |
? : |
Expressões condicionais |
And &&
operand1 && operand2
Determina se ambos os valores são verdadeiros.
Operandos
| Operando | Type | Descrição |
|---|---|---|
operand1 |
booleano | O primeiro valor a ser verificado se é verdadeiro. |
operand2 |
booleano | O segundo valor a ser verificado se é verdadeiro. |
| Mais operandos | booleano | Mais operandos podem ser incluídos. |
Retornar valor
True quando ambos os valores são verdadeiros, caso contrário retorna false.
Exemplo
Avalia um conjunto de valores de parâmetro e um conjunto de expressões.
param operand1 bool = true
param operand2 bool = true
output andResultParm bool = operand1 && operand2
output andResultExp bool = 10 >= 10 && 5 > 2
Saída do exemplo:
| Nome | Tipo | Valor |
|---|---|---|
andResultParm |
booleano | true |
andResultExp |
booleano | true |
Para evitar a exceção A propriedade de expressão de linguagem 'foo' não existe com objetos Bicep, você pode usar o operador lógico And, conforme mostrado no exemplo abaixo:
param objectToTest object = {
one: 1
two: 2
three: 3
}
output bar bool = contains(objectToTest, 'four') && objectToTest.four == 4
Or ||
operand1 || operand2
Determina se o valor é verdadeiro.
Operandos
| Operando | Type | Descrição |
|---|---|---|
operand1 |
booleano | O primeiro valor a ser verificado se é verdadeiro. |
operand2 |
booleano | O segundo valor a ser verificado se é verdadeiro. |
| Mais operandos | booleano | Mais operandos podem ser incluídos. |
Retornar valor
True quando um dos valores é verdadeiro, caso contrário, retorna false.
Exemplo
Avalia um conjunto de valores de parâmetro e um conjunto de expressões.
param operand1 bool = true
param operand2 bool = false
output orResultParm bool = operand1 || operand2
output orResultExp bool = 10 >= 10 || 5 < 2
Saída do exemplo:
| Nome | Tipo | Valor |
|---|---|---|
orResultParm |
booleano | true |
orResultExp |
booleano | true |
Para evitar a exceção O índice de matriz de propriedades da expressão de linguagem 'x' está fora dos limites, você pode usar o operador lógico Or, conforme mostrado no exemplo abaixo:
param emptyArray array = []
param numberArray array = [1, 2, 3]
output foo bool = empty(emptyArray) || emptyArray[0] == 'bar'
output bar bool = length(numberArray) >= 3 || numberArray[3] == 4
Not !
!boolValue
Nega um valor booliano.
Operando
| Operando | Type | Descrição |
|---|---|---|
boolValue |
booleano | Valor booliano que é negado. |
Retornar valor
Nega o valor inicial e retorna um booliano. Se o valor inicial é true, retorna false.
Exemplo
O not operador nega um valor. Os valores podem estar entre parênteses.
param initTrue bool = true
param initFalse bool = false
output startedTrue bool = !(initTrue)
output startedFalse bool = !initFalse
Saída do exemplo:
| Nome | Tipo | Valor |
|---|---|---|
startedTrue |
booleano | false |
startedFalse |
booleano | true |
Coalesce ??
operand1 ?? operand2
Retorna o primeiro valor não nulo dos operandos.
Operandos
| Operando | Type | Descrição |
|---|---|---|
operand1 |
cadeia de caracteres, inteiro, booliano, objeto, matriz | O valor a ser testado para null. |
operand2 |
cadeia de caracteres, inteiro, booliano, objeto, matriz | O valor a ser testado para null. |
| Mais operandos | cadeia de caracteres, inteiro, booliano, objeto, matriz | O valor a ser testado para null. |
Retornar valor
Retorna o primeiro valor não nulo. Cadeias de caracteres vazias, matrizes vazias, objetos vazios não são null e retorna um valor <vazio>.
Exemplo
As instruções de saída retornam valores não nulos. O tipo de saída precisa ser igual ao tipo na comparação ou um erro será gerado.
param myObject object = {
isnull1: null
isnull2: null
string: 'demoString'
emptystr: ''
integer: 10
}
output nonNullStr string = myObject.isnull1 ?? myObject.string ?? myObject.isnull2
output nonNullInt int = myObject.isnull1 ?? myObject.integer ?? myObject.isnull2
output nonNullEmpty string = myObject.isnull1 ?? myObject.emptystr ?? myObject.string ?? myObject.isnull2
Saída do exemplo:
| Nome | Tipo | Valor |
|---|---|---|
nonNullStr |
string | demoString |
nonNullInt |
INT | 10 |
nonNullEmpty |
string | <empty> |
Expressão condicional ? :
condition ? true-value : false-value
Avalia uma condição e retorna um valor se a condição é verdadeira ou falsa.
Operandos
| Operando | Type | Descrição |
|---|---|---|
condition |
booleano | Condição a ser avaliada como verdadeira ou falsa. |
true-value |
cadeia de caracteres, inteiro, booliano, objeto, matriz | Valor quando a condição é verdadeira. |
false-value |
cadeia de caracteres, inteiro, booliano, objeto, matriz | Valor quando a condição é falsa. |
Exemplo
Este exemplo avalia a inicial de um parâmetro e retorna um valor se a condição é verdadeira ou falsa.
param initValue bool = true
output outValue string = initValue ? 'true value' : 'false value'
Saída do exemplo:
| Nome | Tipo | Valor |
|---|---|---|
outValue |
string | true value |
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.