Collection-if y spread en Dart
Construye colecciones declarativamente, en el literal mismo.
void main() {
const raining = true;
final core = ['binoculars', 'notebook'];
// Collection-if and spread build lists declaratively.
final pack = [
...core,
if (raining) 'lens cloth',
for (var i = 1; i <= 2; i++) 'battery $i',
];
print(pack);
// The same forms work in maps and sets.
final labels = {for (final item in core) item: item.length};
print(labels);
}
Cómo funciona
...coredesparrama una lista dentro de otra.if (raining) 'lens cloth'incluye un elemento por condición.fordentro del literal genera elementos; los maps hacen las tres.
Palabras clave y builtins usados aquí
constfinalforifinvarvoid
El intento, en números
- Líneas
- 16
- Caracteres a escribir
- 362
- Tokens
- 94
- Ritmo de tres estrellas
- 65 tpm
Al ritmo de tres estrellas de 65 tokens por minuto, este intento toma unos 87 segundos.
Paso 3 de 3 en Colecciones; paso 12 de 27 en Fundamentos del lenguaje.