Junior
Fale sobre os operadores na linguagem de programação Dart.
sobes.tech IA
Resposta da IA
Os operadores em Dart são usados para realizar operações sobre variáveis e valores.
Categorias principais de operadores:
- Atribuição: Atribuem um valor a uma variável.
int a = 10; // Atribuição a += 5; // a = a + 5 a ??= 0; // Atribuir 0 se a for null - Aritméticos: Realizam operações matemáticas.
int soma = 5 + 3; int diferenca = 10 - 2; int produto = 4 * 6; double divisao = 15 / 3; int resto = 10 % 3; // Resto da divisão a++; // Incremento b--; // Decremento - Relacionais: Comparam dois valores e retornam um valor booleano.
bool eIgual = (5 == 5); bool naoEIgual = (10 != 5); bool eMaior = (7 > 2); bool eMenor = (3 < 8); bool eMaiorOuIgual = (4 >= 4); bool eMenorOuIgual = (6 <= 10); - Lógicos: Realizam operações lógicas sobre valores booleanos.
bool resultadoE = true && false; bool resultadoOu = true || false; bool resultadoNao = !true; - De tipo: Verificam o tipo de objeto em tempo de execução.
var meuObjeto = "Olá"; bool eString = meuObjeto is String; // Verificação de tipo bool eInt = meuObjeto is int; String? talvezString; int? resultado = talvezString as int?; // Conversão de tipo (não segura) - Condicional: Permitem executar código dependendo de uma condição.
var x = 10; var y = (x > 5) ? "maior que 5" : "menor ou igual a 5"; // Operador ternário var z = null; var valor = z ?? "valor padrão"; // Operador '??' - Operadores em cascata (..): Permitem chamar vários métodos ou atribuir valores às propriedades de um mesmo objeto em sequência.
var sb = StringBuffer(); sb..write("Olá") ..write(" ") ..write("Mundo!"); - Operador de acesso seguro a null (?): Usado para prevenir erros ao trabalhar com tipos nullable.
String? stringNula; int? comprimento = stringNula?.length; // Retorna null se stringNula for null - Operador de propagação (... / ...?): Usado para incluir todos os elementos de uma lista em outra lista.
...?é seguro para null.var lista1 = [1, 2, 3]; var lista2 = [0, ...lista1, 4]; // [0, 1, 2, 3, 4] var listaNula = null; var lista3 = [0, ...?listaNula, 4]; // [0, 4]
A ordem de prioridade dos operadores determina em que ordem as operações são realizadas em uma expressão.