一组键/值对,您可以使用其相关键从中检索值。
映射中键的数量是有限的,每个键都与一个值相关联。
映射及其键和值都可以迭代。迭代顺序由映射的特定类型定义。例如
- 普通的HashMap是无序的(不保证顺序),
- LinkedHashMap按照键插入顺序迭代,
- 以及像SplayTreeMap这样的有序映射按照排序顺序迭代键。
通常情况下,不允许在执行う操作时修改映射(添加或删除键),例如在调用forEach或putIfAbsent函数期间。在迭代键或值时修改映射也可能破坏迭代。
通常情况下,不允许在键(从而不是其哈希码)在映射中时修改其相等性。某些专用子类型可能更加宽泛,在这种情况下,它们应记录这种行为。
构造函数
- Map()
- 创建一个空的LinkedHashMap。factory
- Map.from(Map other)
- 创建一个具有与
other
相同的键和值的LinkedHashMap。factory -
Map.fromEntries(Iterable<
MapEntry< entries)K, V> > - 创建一个新映射并添加所有条目。factory
- Map.fromIterable(Iterable iterable, {K key(dynamic element)?, V value(dynamic element)?})
- 创建一个映射实例,其键和值是从
iterable
计算出来的。factory -
Map.fromIterables(Iterable<
K> keys, Iterable<V> values) - 创建一个将给定的
keys
关联到给定values
的映射。factory - Map.identity()
- 创建一个使用默认实现 LinkedHashMap 的身份映射。factory
-
Map.of(Map<
K, V> other) - 创建一个具有与
other
相同的键和值的LinkedHashMap。factory - Map.unmodifiable(Map other)
- 创建一个包含
other
中条目的不可修改的基于散列的映射。factory
属性
方法
-
addAll(
Map< K, V> other) → void - 将
other
的所有键/值对添加到此映射中。 -
addEntries(
Iterable< MapEntry< newEntries) → voidK, V> > - 将
newEntries
的所有键/值对添加到此映射中。 -
cast<
RK, RV>( ) → Map< RK, RV> - 如果需要,则提供以
RK
键和RV
实例查看此地图的视图。 -
clear(
) → void - 从地图中删除所有条目。
-
containsKey(
Object? key) → bool - 判断此地图是否包含给定的
key
。 -
containsValue(
Object? value) → bool - 判断此地图是否包含给定的
value
。 -
forEach(
void action(K key, V value)) → void - 将
action
应用到地图中的每个键/值对。 -
map<
K2, V2> (MapEntry< ) → Map<K2, V2> convert(K key, V value)K2, V2> - 通过给定的
convert
函数将此地图的所有条目转换后返回一个新地图。 -
noSuchMethod(
Invocation) → dynamic - 当访问不存在的属性或方法时调用。继承的
-
putIfAbsent(
K key, V ifAbsent()) → V - 查找
key
的值,如果不存在,则添加新条目。 -
remove(
Object? key) → V? - 如果存在,从地图中删除
key
和其相关联的值。 -
removeWhere(
bool test(K key, V) ) → void - 删除满足给定
test
的此地图中的所有条目。 -
toString(
) → String - 此对象的字符串表示形式。继承的
-
update(
K key, V update(V value), {V ifAbsent()?}) → V - 更新提供的
key
对应的值。 -
updateAll(
V update(K key, V value)) → void - 更新所有值。
操作符
-
operator ==(
Object other) → bool - 等价操作符。继承的
-
operator [](
Object? key) → V? - 对于给定的
key
的值,或者当key
不在映射中时返回null
。 -
operator []=(
K key, V value) → void - 将
key
与给定的value
相关联。