Menu
Coddy logo textTech

Operadores de Prueba de Tipo

Parte de la sección Fundamentos del Journey de Dart de Coddy — lección 26 de 94.

Los operadores de prueba de tipo de Dart verifican los tipos de variables en tiempo de ejecución: is verifica si una variable coincide con un tipo, mientras que is! verifica si no lo hace.

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

Desafío

Fácil

Crea un programa en Dart que use los operadores de prueba de tipo (is y is!) para verificar los tipos de variables:

  1. Crea una variable number con el valor 42 usando inferencia de tipo (var)
  2. Crea una variable decimal con el valor 3.14 usando inferencia de tipo
  3. Crea una variable text con el valor "Hello" usando inferencia de tipo
  4. Crea una variable active con el valor true usando inferencia de tipo
  5. Usa el operador is para verificar si cada variable es de su tipo correcto (int, double, String, bool)
  6. Usa el operador is! para verificar si cada variable NO es de un tipo incorrecto
  7. Imprime los resultados con el formato exacto mostrado en la salida esperada

Tu salida debe coincidir con este formato exacto:

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

Hoja de referencia

Los operadores de prueba de tipo de Dart verifican los tipos de variables en tiempo de ejecución:

  • is - verifica si una variable coincide con un tipo
  • is! - verifica si una variable no coincide con un tipo
var number = 42;
var isInteger = number is int;        // true
var isNotString = number is! String;  // true

print('Is $number an integer? $isInteger');
print('Is $number not a string? $isNotString');

Puedes verificar múltiples tipos:

var value1 = 'Hello';
var value2 = 42;
var value3 = true;

print('$value1 is a String: ${value1 is String}');  // true
print('$value2 is a double: ${value2 is double}');  // false
print('$value3 is a bool: ${value3 is bool}');      // true

Pruébalo tú mismo

void main() {
  // Crear variables usando inferencia de tipos
  var number = ?;
  var decimal = ?;
  var text = ?;
  var active = ?;
  
  // Verificar tipos con el operador 'is' e imprimir resultados
  print("number is int: ${number ? int}");
  print("number is! String: ${number ? String}");
  
  print("decimal is double: ${decimal ? double}");
  print("decimal is! int: ${decimal ? int}");
  
  print("text is String: ${text ? String}");
  print("text is! bool: ${text ? bool}");
  
  print("active is bool: ${active ? bool}");
  print("active is! double: ${active ? double}");
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos