keys

Las claves de un Map, como un Iterable perezoso normal — listo para envolver con fx() y encadenar.

Iterable<K> keys<K, V>(Map<K, V> map)

Lección

keys(map) es un envoltorio fino, al estilo FxTS, sobre el propio map.keys de Dart — existe sobre todo para que el vocabulario de funciones de objeto (entries, keys, values) se lea de forma coherente y encaje directamente en fx(). El Map.keys de Dart ya es una vista perezosa, así que keys no añade ningún búfer extra: simplemente te entrega ese mismo Iterable<K> perezoso.

Recurre a él cuando quieras filtrar, transformar o recolectar el conjunto de claves de un Map con el resto del vocabulario de la cadena, en lugar de llamar a .where()/.toList() sobre map.keys directamente — son equivalentes, pero fx(keys(map)) se lee con naturalidad junto a fx(values(map)) y fx(entries(map)).

Si necesitas las claves y los valores a la vez, usa entries: obtener keys y values por separado no garantiza que se correspondan si el map subyacente se mutara entre ambas llamadas.

Demo 1 · Fundamentos

Demo 2 · Filtrar un Map por sus claves

Pruébalo tú

Ejercicio: usa keys y sort para obtener una lista de nombres de artículos ordenada alfabéticamente.

Relacionado: entries — claves y valores emparejados · values — los valores de un Map · pick — construir un Map nuevo a partir de un subconjunto de claves · fx — la cadena a la que alimentan los resultados de keys