Menu
Coddy logo textTech

Operadores de Teste de Tipo

Parte da seção Fundamentos do Journey de Dart da Coddy. Lição 26 de 94.

Os operadores de teste de tipo do Dart verificam os tipos de variáveis em tempo de execução: is verifica se uma variável corresponde a um tipo, enquanto is! verifica se não corresponde.

void main() {
  var number = 42;
  var isInteger = number is int;
  
  print('Is $number an integer? $isInteger');
}
void main() {
  var price = 9.99;
  var isNotInteger = price is! int;
  
  print('Is $price not an integer? $isNotInteger');
}
void main() {
  var value1 = 'Hello';
  var value2 = 42;
  var value3 = true;
  
  print('$value1 is a String: ${value1 is String}');
  print('$value2 is a double: ${value2 is double}');
  print('$value3 is a bool: ${value3 is bool}');
}
challenge icon

Desafio

Fácil

Crie um programa Dart que use os operadores de teste de tipo (is e is!) para verificar tipos de variáveis:

  1. Crie uma variável number com o valor 42 usando inferência de tipo (var)
  2. Crie uma variável decimal com o valor 3.14 usando inferência de tipo
  3. Crie uma variável text com o valor "Hello" usando inferência de tipo
  4. Crie uma variável active com o valor true usando inferência de tipo
  5. Use o operador is para verificar se cada variável é do seu tipo correto (int, double, String, bool)
  6. Use o operador is! para verificar se cada variável NÃO é de um tipo incorreto
  7. Imprima os resultados com o formato exato mostrado na saída esperada

Sua saída deve corresponder a este formato exato:

number is int: true
number is! String: true
decimal is double: true
decimal is! int: true
text is String: true
text is! bool: true
active is bool: true
active is! double: true

Experimente você mesmo

void main() {
  // Criar variáveis usando inferência de tipos
  // Substitua cada placeholder por um valor do tipo que sua linha de print nomeia
  var number = null;
  var decimal = null;
  var text = null;
  var active = null;
  
  // Verifique os tipos com os operadores de teste de tipo e imprima os resultados
  // Substitua cada placeholder por um teste de tipo para que cada linha imprima um booleano
  print("number is int: ${number}");
  print("number is! String: ${number}");
  
  print("decimal is double: ${decimal}");
  print("decimal is! int: ${decimal}");
  
  print("text is String: ${text}");
  print("text is! bool: ${text}");
  
  print("active is bool: ${active}");
  print("active is! double: ${active}");
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos

Pratique por conta própria: Compilador de Dart online