Programação Dart - Operadores
Uma expressão é um tipo especial de instrução que avalia um valor. Cada expressão é composta por -
Operands - Representa os dados
Operator - Define como os operandos serão processados para produzir um valor.
Considere a seguinte expressão - "2 + 3". Nesta expressão, 2 e 3 sãooperands e o símbolo "+" (mais) é o operator.
Neste capítulo, discutiremos os operadores disponíveis no Dart.
- Operadores aritméticos
- Operadores de igualdade e relacionamento
- Operadores de teste de tipo
- Operadores bit a bit
- Operadores de atribuição
- Operadores lógicos
Operadores aritméticos
A tabela a seguir mostra os operadores aritméticos suportados pelo Dart.
Sr. Não | Operadores e significado |
---|---|
1 | + Adicionar |
2 | − Subtrair |
3 | -expr Menos unário, também conhecido como negação (inverter o sinal da expressão) |
4 | * Multiplicar |
5 | / Dividir |
6 | ~/ Divide, retornando um resultado inteiro |
7 | % Obtenha o restante de uma divisão inteira (módulo) |
8 | ++ Incremento |
9 | -- Decrementar |
Operadores de igualdade e relacionamento
Operadores relacionais testa ou define o tipo de relacionamento entre duas entidades. Os operadores relacionais retornam um valor booleano, ou seja, verdadeiro / falso.
Suponha que o valor de A seja 10 e B seja 20.
Operador | Descrição | Exemplo |
---|---|---|
> | Maior que | (A> B) é falso |
< | Menos do que | (A <B) é verdadeiro |
> = | Melhor que ou igual a | (A> = B) é falso |
<= | Menor ou igual a | (A <= B) é verdadeiro |
== | Igualdade | (A == B) é falso |
! = | Não igual | (A! = B) é verdadeiro |
Operadores de teste de tipo
Esses operadores são úteis para verificar os tipos em tempo de execução.
Operador | Significado |
---|---|
é | Verdadeiro se o objeto tiver o tipo especificado |
é! | False se o objeto tiver o tipo especificado |
Operadores bit a bit
A tabela a seguir lista os operadores bit a bit disponíveis no Dart e suas funções -
Operador | Descrição | Exemplo |
---|---|---|
E bit a bit | a e b | Retorna um em cada posição de bit para a qual os bits correspondentes de ambos os operandos são uns. |
OR bit a bit | a | b | Retorna um em cada posição de bit para a qual os bits correspondentes de um ou de ambos os operandos são uns. |
XOR bit a bit | a ^ b | Retorna um em cada posição de bit para a qual os bits correspondentes de um, mas não de ambos os operandos, são uns. |
NÃO bit a bit | ~ a | Inverte os bits de seu operando. |
Desvio à esquerda | a ≪ b | Desloca a na representação binária b (<32) bits para a esquerda, deslocando em zeros da direita. |
Mudança para a direita de propagação de sinais | a ≫ b | Desloca a na representação binária b (<32) bits para a direita, descartando os bits deslocados. |
Operadores de atribuição
A tabela a seguir lista os operadores de atribuição disponíveis no Dart.
Sr. Não | Operador e descrição |
---|---|
1 | =(Simple Assignment ) Atribui valores do operando do lado direito para o operando do lado esquerdo Ex: C = A + B irá atribuir o valor de A + B em C |
2 | ??= Atribua o valor apenas se a variável for nula |
3 | +=(Add and Assignment) Ele adiciona o operando direito ao operando esquerdo e atribui o resultado ao operando esquerdo. Ex: C + = A é equivalente a C = C + A |
4 | ─=(Subtract and Assignment) Ele subtrai o operando direito do operando esquerdo e atribui o resultado ao operando esquerdo. Ex: C - = A é equivalente a C = C - A |
5 | *=(Multiply and Assignment) Ele multiplica o operando direito pelo operando esquerdo e atribui o resultado ao operando esquerdo. Ex: C * = A é equivalente a C = C * A |
6 | /=(Divide and Assignment) Ele divide o operando esquerdo com o operando direito e atribui o resultado ao operando esquerdo. |
Note - A mesma lógica se aplica aos operadores bit a bit, então eles se tornarão ≪ =, ≫ =, ≫ =, ≫ =, | = e ^ =.
Operadores lógicos
Os operadores lógicos são usados para combinar duas ou mais condições. Os operadores lógicos retornam um valor booleano. Suponha que o valor da variável A seja 10 e B seja 20.
Operador | Descrição | Exemplo |
---|---|---|
&& | And - O operador retorna verdadeiro apenas se todas as expressões especificadas retornarem verdadeiro |
(A> 10 && B> 10) é False. |
|| | OR - O operador retorna verdadeiro se pelo menos uma das expressões especificadas retornar verdadeiro |
(A> 10 || B> 10) é Verdadeiro. |
! | NOT- O operador retorna o inverso do resultado da expressão. Por exemplo:! (7> 5) retorna falso |
! (A> 10) é Verdadeiro. |
Expressões condicionais
O Dart tem dois operadores que permitem avaliar expressões que, de outra forma, podem exigir instruções ifelse -
doença ? expr1: expr2
Se a condição for verdadeira, a expressão avalia expr1(e retorna seu valor); caso contrário, avalia e retorna o valor deexpr2.
expr1 ?? expr2
E se expr1não é nulo, retorna seu valor; caso contrário, avalia e retorna o valor deexpr2
Exemplo
O exemplo a seguir mostra como você pode usar a expressão condicional no Dart -
void main() {
var a = 10;
var res = a > 12 ? "value greater than 10":"value lesser than or equal to 10";
print(res);
}
Ele produzirá a seguinte saída -
value lesser than or equal to 10
Exemplo
Vamos dar outro exemplo -
void main() {
var a = null;
var b = 12;
var res = a ?? b;
print(res);
}
Ele produzirá a seguinte saída -
12