Operadores de bíceps
Este artigo descreve os operadores Bicep. Os operadores são usados para calcular valores, comparar valores ou avaliar condições. Existem seis tipos de operadores de bíceps:
Precedência e associatividade do operador
Os operadores abaixo estão listados em ordem decrescente de precedência (quanto maior a posição, maior a precedência). Os operadores enumerados ao mesmo nível têm igual precedência.
Símbolo | Tipo de Operação | Associatividade |
---|---|---|
( ) [ ] . :: |
Parênteses, indexadores de matriz, acessadores de propriedade e acessador de recursos aninhados | Esquerda para a direita |
! - |
Unário | Da direita para a esquerda |
% * / |
Multiplicativo | Esquerda para a direita |
+ - |
Aditivo | Esquerda para a direita |
<= < > >= |
Relacional | Esquerda para a direita |
== != =~ !~ |
Equality | Esquerda para a direita |
&& |
Lógica E | Esquerda para a direita |
|| |
Lógica OU | Esquerda para a direita |
?? |
Coalesce | Esquerda para a direita |
? : |
Expressão condicional (ternária) | Da direita para a esquerda |
Parênteses
Colocar uma expressão entre parênteses permite que você substitua a precedência padrão do operador Bicep. Por exemplo, a expressão x + y / z
avalia primeiro a divisão e depois a adição. No entanto, a expressão (x + y) / z
avalia a adição em primeiro lugar e a divisão em segundo.
Acessor
Os operadores de acessador são usados para acessar recursos aninhados e propriedades em objetos.
Operador | Nome | Descrição |
---|---|---|
[] |
Acessador de índice | Acesse um elemento de uma matriz ou propriedade em um objeto. |
. |
Função acessador | Chamar uma função em um recurso. |
:: |
Acessador de recursos aninhado | Acesse um recurso aninhado de fora do recurso pai. |
. |
Acesso à propriedade | Acessar propriedades de um objeto. |
Comparação
Os operadores de comparação comparam valores e retornam ou true
false
.
Operador | Nome | Descrição |
---|---|---|
>= |
Maior ou igual | Avalia se o primeiro valor é maior ou igual ao segundo valor. |
> |
Maior que | Avalia se o primeiro valor é maior que o segundo. |
<= |
Menor ou igual | Avalia se o primeiro valor é menor ou igual ao segundo valor. |
< |
Menos de | Avalia se o primeiro valor é menor que o segundo. |
== |
Igual | Avalia se dois valores são iguais. |
!= |
Não é igual | Avalia se dois valores não são iguais. |
=~ |
Igual não diferencia maiúsculas de minúsculas | Ignora maiúsculas e minúsculas para determinar se dois valores são iguais. |
!~ |
Não diferencia maiúsculas de minúsculas igual | Ignora maiúsculas e minúsculas para determinar se dois valores não são iguais. |
Lógico
Os operadores lógicos avaliam valores booleanos, retornam valores não nulos ou avaliam uma expressão condicional.
Operador | Nome | Descrição |
---|---|---|
&& |
And | Retorna true se todos os valores forem verdadeiros. |
|| |
Or | Retorna true se qualquer um dos valores for true. |
! |
Not | Nega um valor booleano. Usa um operando. |
?? |
Coalesce | Retorna o primeiro valor não nulo. |
? : |
Expressão condicional | Avalia uma condição para true ou false e retorna um valor. |
Tolerância nula
O operador null-forgiving suprime todos os avisos anuláveis para a expressão anterior.
Operador | Nome | Descrição |
---|---|---|
! |
Tolerância nula | Suprime todos os avisos anuláveis para a expressão anterior. |
Numérico
Os operadores numéricos usam inteiros para fazer cálculos e retornar valores inteiros.
Operador | Nome | Descrição |
---|---|---|
* |
Multiplicar | Multiplica dois inteiros. |
/ |
Dividir | Divide um inteiro por um inteiro. |
% |
Módulo | Divide um inteiro por um inteiro e retorna o restante. |
+ |
Adicionar | Adiciona dois inteiros. |
- |
Subtrair | Subtrai um inteiro de outro inteiro. Usa dois operandos. |
- |
Menos (unário) | Multiplica um inteiro por -1 . Usa um operando. |
Nota
Subtrair e menos usar o mesmo operador. A funcionalidade é diferente porque subtrair usa dois operandos e menos usa um operando.
Desreferenciação segura
O operador de desreferência segura ajuda a evitar erros que podem ocorrer ao tentar acessar propriedades ou elementos sem o conhecimento adequado de sua existência ou valor.
Operador | Nome | Descrição |
---|---|---|
<base>.?<property> , <base>[?<index>] |
Desreferenciação segura | Aplica um acesso de membro de objeto ou uma operação de acesso de elemento de matriz ao seu operando somente se esse operando for avaliado como não nulo, caso contrário, ele retornará null . |
Espalhar
O operador spread é usado para expandir uma matriz ou objeto iterável em elementos individuais. O operador spread permite que você manipule facilmente matrizes ou objetos espalhando seus elementos ou propriedades em novas matrizes ou objetos.
Operador | Nome | Descrição |
---|---|---|
... |
Espalhar | Permite a expansão de matrizes e objetos iteráveis em elementos ou propriedades individuais. |
Próximos passos
- Para criar um arquivo Bicep, consulte Guia de início rápido: criar arquivos Bicep com o Visual Studio Code.
- Para obter informações sobre como resolver erros de tipo Bicep, consulte Qualquer função para Bicep.
- Para comparar a sintaxe para Bicep e JSON, consulte Comparando JSON e Bicep para modelos.
- Para obter exemplos de funções do bíceps, consulte Funções do bíceps.