LinkedHashMap<K, V>.fromIterable 构造函数
- Iterable iterable,
- {K key(
- dynamic element
- V value(
- dynamic element
通过迭代元素创建一个新的 LinkedHashMap,其中键和值通过计算得出。
对于 iterable
的每个元素,此构造函数通过应用 key
和 value
分别计算键/值对。
键/值对的键不需要唯一。最后发生的键将简单地覆盖以前的值。
如果没有指定 key
和 value
的值,默认情况下它们都默认为恒等函数。示例
final numbers = [11, 12, 13, 14];
final mapFromIterable =
LinkedHashMap.fromIterable(numbers, key: (i) => i, value: (i) => i * i);
print(mapFromIterable); // {11: 121, 12: 144, 13: 169, 14: 196}
实现
factory LinkedHashMap.fromIterable(Iterable iterable,
{K Function(dynamic element)? key, V Function(dynamic element)? value}) {
LinkedHashMap<K, V> map = LinkedHashMap<K, V>();
MapBase._fillMapWithMappedIterable(map, iterable, key, value);
return map;
}