key-value键值对(可以使用相关联的key检索value值)的集合。

Map中key的数量是有限的,每个key正好有一个相关的value。

Map、以及它的键和值,都是可以迭代的。 迭代的顺序由Map不同的类型定义。例如:

当Map的一个操作正在执行的时候,通常不允许修改Map(添加或删除key), 例如,在调用forEachputIfAbsent期间。 在迭代key或value时修改Map也可能会破坏迭代。

Implemented by

Constructors

Map()

创建一个Map实例,默认实现是LinkedHashMap

factory
Map.from(Map other)

创建一个LinkedHashMap实例,包含other的所有键值对。

factory
Map.fromIterable(Iterable iterable, {K key(element), V value(element)})

创建一个Map实例,其中Key和Value由iterable的元素计算得到。

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

将指定的keysvalues关联,创建一个Map实例。

factory
Map.identity()

使用默认实现LinkedHashMap创建一个严格的Map。

factory
Map.unmodifiable(Map other)

创建一个不可修改、基于哈希值的Map,包含other所有的项。

factory

Properties

hashCode int

获取对象的哈希值。

read-only, inherited
isEmpty bool

如果Map中不存在key-value键值对,返回true。

read-only
isNotEmpty bool

如果Map中至少有一个key-value键值对,返回true。

read-only
keys Iterable<K>

this的所有key。

read-only
length int

Map中key-value键值对的数量。

read-only
runtimeType Type

表示对象的运行时类型。

read-only, inherited
values Iterable<V>

this的所有value。

read-only

Operators

operator ==(other) bool

相等操作符。

inherited
operator [](Object key) → V

通过指定的key,返回对应的value。如果Map中不存在key,返回null。

operator []=(K key, V value) → void

将指定的valuekey相关联。

Methods

addAll(Map<K, V> other) → void

other中所有的key-value键值对添加到this中。

clear() → void

删除Map中所有的键值对。

containsKey(Object key) bool

如果this包含指定的key,返回true。

containsValue(Object value) bool

如果this包含指定的value,返回true。

forEach(void f(K key, V value)) → void

f应用于Map的每个key-value键值对。

noSuchMethod(Invocation invocation) → dynamic

当一个不存在的函数或成员变量被访问时,该函数被调用。

inherited
putIfAbsent(K key, V ifAbsent()) → V

查找key对应的value,或添加一个新的value。

remove(Object key) → V

如果存在的话,从Map中删除key和它关联的value。

toString() String

返回一个用来表示对象的字符串。

inherited