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.
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.
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.
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: {}
}
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}
}
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}
}
Para más detalles sobre los Set literals en Dart, consulta la documentación oficial de Dart.
Jorge García
Fullstack developer