Volver a la página principal
jueves 31 octubre 2024
4

Cómo usar Set literals en Dart

Los Set literals en Dart permiten crear conjuntos (Sets) de manera sencilla y directa usando llaves {}. Los Sets son colecciones no ordenadas de elementos únicos, lo cual es útil cuando se necesita una lista en la que los elementos no se repitan. Al emplear Set literals, se puede definir un Set de forma rápida, similar a la sintaxis de listas y mapas.

¿Qué es un Set literal en Dart?

Un Set literal es una forma de definir un Set directamente usando llaves {}. Dart infiere automáticamente que una colección es un Set cuando los elementos están rodeados de llaves y no están asociados a valores (como en los mapas). Si el Set está vacío, es necesario indicar el tipo explícitamente para diferenciarlo de un mapa.

Ejemplo básico de Set literal en Dart

Aquí se muestra cómo declarar un Set usando Set literals:

void main() {
  var frutas = {'manzana', 'plátano', 'naranja'};
  print(frutas); // Salida: {manzana, plátano, naranja}
}

En este ejemplo, Dart interpreta las llaves {} como un Set porque contiene una colección de valores sin claves. Los elementos en frutas no se repiten y el Set almacenará solo valores únicos.

Declaración de Sets vacíos

Para definir un Set vacío, es necesario especificar el tipo <Set> o asignarlo explícitamente, ya que Dart podría interpretarlo como un mapa vacío {}.

void main() {
  Set<int> numeros = {}; // Set vacío de enteros
  print(numeros); // Salida: {}
}

Ventajas de los Set literals

  • Elementos únicos: Los Sets eliminan automáticamente los elementos duplicados.
  • Búsqueda rápida: Los Sets están optimizados para comprobar si un elemento ya existe.
  • Sintaxis concisa: Los Set literals permiten definir Sets sin crear instancias explícitas.

Ejemplo de manipulación con Set literals

En el siguiente ejemplo, se muestra cómo añadir y eliminar elementos de un Set:

void main() {
  var numeros = {1, 2, 3, 4};

  numeros.add(5); // Añade el número 5 al Set
  numeros.remove(2); // Elimina el número 2 del Set

  print(numeros); // Salida: {1, 3, 4, 5}
}

Uso de Set literals con const

Los Set literals también pueden ser constantes al usar const, creando Sets inmutables que no se pueden modificar después de su declaración:

void main() {
  final Set<String> dias = const {'lunes', 'martes', 'miércoles'};
  // dias.add('jueves'); // Error: No se puede modificar un Set constante

  print(dias); // Salida: {lunes, martes, miércoles}
}

Referencias

Para más detalles sobre los Set literals en Dart, consulta la documentación oficial de Dart.

Etiquetas:
dart
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer