En Dart, los operadores son símbolos que se utilizan para realizar operaciones en variables y valores. Los operadores en Dart se pueden clasificar en varias categorías, como operadores aritméticos, operadores de asignación, operadores de comparación, operadores lógicos, operadores de incremento/decremento y operadores de tipo. En esta sección, exploraremos cada uno de estos operadores con ejemplos prácticos.
Operadores Aritméticos
Los operadores aritméticos se utilizan para realizar operaciones matemáticas comunes.
Operador | Descripción | Ejemplo |
---|---|---|
+ |
Suma | a + b |
- |
Resta | a - b |
* |
Multiplicación | a * b |
/ |
División | a / b |
% |
Módulo (resto) | a % b |
~/ |
División entera | a ~/ b |
Ejemplo Práctico
void main() { int a = 10; int b = 3; print('Suma: ${a + b}'); // Suma: 13 print('Resta: ${a - b}'); // Resta: 7 print('Multiplicación: ${a * b}'); // Multiplicación: 30 print('División: ${a / b}'); // División: 3.3333333333333335 print('Módulo: ${a % b}'); // Módulo: 1 print('División entera: ${a ~/ b}'); // División entera: 3 }
Operadores de Asignación
Los operadores de asignación se utilizan para asignar valores a las variables.
Operador | Descripción | Ejemplo |
---|---|---|
= |
Asignación simple | a = b |
+= |
Asignación con suma | a += b |
-= |
Asignación con resta | a -= b |
*= |
Asignación con multiplicación | a *= b |
/= |
Asignación con división | a /= b |
%= |
Asignación con módulo | a %= b |
Ejemplo Práctico
void main() { int a = 10; int b = 3; a += b; // a = a + b print('a += b: $a'); // a += b: 13 a -= b; // a = a - b print('a -= b: $a'); // a -= b: 10 a *= b; // a = a * b print('a *= b: $a'); // a *= b: 30 a ~/= b; // a = a ~/ b print('a ~/= b: $a'); // a ~/= b: 10 a %= b; // a = a % b print('a %= b: $a'); // a %= b: 1 }
Operadores de Comparación
Los operadores de comparación se utilizan para comparar dos valores y devuelven un valor booleano (true
o false
).
Operador | Descripción | Ejemplo |
---|---|---|
== |
Igual a | a == b |
!= |
No igual a | a != b |
> |
Mayor que | a > b |
< |
Menor que | a < b |
>= |
Mayor o igual que | a >= b |
<= |
Menor o igual que | a <= b |
Ejemplo Práctico
void main() { int a = 10; int b = 3; print('a == b: ${a == b}'); // a == b: false print('a != b: ${a != b}'); // a != b: true print('a > b: ${a > b}'); // a > b: true print('a < b: ${a < b}'); // a < b: false print('a >= b: ${a >= b}'); // a >= b: true print('a <= b: ${a <= b}'); // a <= b: false }
Operadores Lógicos
Los operadores lógicos se utilizan para combinar expresiones booleanas.
Operador | Descripción | Ejemplo |
---|---|---|
&& |
Y lógico (AND) | a && b |
` | ` | |
! |
No lógico (NOT) | !a |
Ejemplo Práctico
void main() { bool a = true; bool b = false; print('a && b: ${a && b}'); // a && b: false print('a || b: ${a || b}'); // a || b: true print('!a: ${!a}'); // !a: false }
Operadores de Incremento/Decremento
Los operadores de incremento y decremento se utilizan para aumentar o disminuir el valor de una variable en uno.
Operador | Descripción | Ejemplo |
---|---|---|
++ |
Incremento | a++ o ++a |
-- |
Decremento | a-- o --a |
Ejemplo Práctico
void main() { int a = 10; print('a++: ${a++}'); // a++: 10 (post-incremento) print('a: $a'); // a: 11 print('++a: ${++a}'); // ++a: 12 (pre-incremento) print('a--: ${a--}'); // a--: 12 (post-decremento) print('a: $a'); // a: 11 print('--a: ${--a}'); // --a: 10 (pre-decremento) }
Operadores de Tipo
Los operadores de tipo se utilizan para verificar el tipo de un objeto o para convertir un objeto a otro tipo.
Operador | Descripción | Ejemplo |
---|---|---|
is |
Verifica el tipo | a is int |
is! |
Verifica que no es el tipo | a is! int |
as |
Conversión de tipo | a as int |
Ejemplo Práctico
void main() { var a = 10; print('a is int: ${a is int}'); // a is int: true print('a is! String: ${a is! String}'); // a is! String: true dynamic b = 'Hello'; String c = b as String; print('c: $c'); // c: Hello }
Ejercicios Prácticos
Ejercicio 1
Escribe un programa en Dart que realice las siguientes operaciones con dos números enteros x
y y
:
- Suma
- Resta
- Multiplicación
- División
- Módulo
Solución:
void main() { int x = 15; int y = 4; print('Suma: ${x + y}'); // Suma: 19 print('Resta: ${x - y}'); // Resta: 11 print('Multiplicación: ${x * y}'); // Multiplicación: 60 print('División: ${x / y}'); // División: 3.75 print('Módulo: ${x % y}'); // Módulo: 3 }
Ejercicio 2
Escribe un programa en Dart que verifique si un número n
es mayor que 10 y menor que 20.
Solución:
void main() { int n = 15; if (n > 10 && n < 20) { print('$n es mayor que 10 y menor que 20'); // 15 es mayor que 10 y menor que 20 } else { print('$n no cumple la condición'); } }
Ejercicio 3
Escribe un programa en Dart que convierta un valor dinámico a un tipo específico y verifique su tipo.
Solución:
void main() { dynamic value = 42; if (value is int) { print('El valor es un entero'); // El valor es un entero } else { print('El valor no es un entero'); } String strValue = value.toString(); print('strValue: $strValue'); // strValue: 42 }
Conclusión
En esta sección, hemos cubierto los operadores básicos en Dart, incluyendo operadores aritméticos, de asignación, de comparación, lógicos, de incremento/decremento y de tipo. Estos operadores son fundamentales para realizar operaciones en tus programas y son esenciales para cualquier programador que trabaje con Dart. Asegúrate de practicar con los ejemplos y ejercicios proporcionados para reforzar tu comprensión de estos conceptos. En la próxima sección, exploraremos las sentencias de control de flujo en Dart.
Curso de Programación en Dart
Módulo 1: Introducción a Dart
- Introducción a Dart
- Configuración del Entorno de Desarrollo
- Tu Primer Programa en Dart
- Sintaxis y Estructura Básica