Map<K, V>.fromIterables 构造函数

Map<K, V>.fromIterables(
  1. Iterable<K> keys,
  2. Iterable<V> values
)

创建一个将给定的 keys 与给定的 values 相关联的映射。

映射构建过程会同时迭代 keysvalues,并为每一对键值添加一个条目到映射中。

final rings = <bool>[false, false, true, true];
final planets = <String>{'Earth', 'Mars', 'Jupiter', 'Saturn'};
final map = Map<String, bool>.fromIterables(planets, rings);
print(map); // {Earth: false, Mars: false, Jupiter: true, Saturn: true}

如果 keys 包含相同的对象多次,则最后一个出现的值会覆盖之前任何值。

这两个 Iterable 必须具有相同的长度。

创建的映射是一个 LinkedHashMapLinkedHashMap 需要 key 实现兼容的 operator==hashCode。它按照键插入顺序迭代。

实现

factory Map.fromIterables(Iterable<K> keys, Iterable<V> values) =
    LinkedHashMap<K, V>.fromIterables;