UnmodifiableMapBase<K, V>抽象

不可修改的Map的基本实现。

此类实现了不可修改的Map的所有成员(除了两个)。可以通过扩展此类并实现keysoperator[]来实现简单的不可修改的Map类。

在尝试修改时抛出异常。其他非修改操作通过keysoperator[]实现。

keys可迭代对象应具有高效的Iterable.lengthIterable.contains操作,并且在迭代过程中应捕捉到对键的并发修改。

通常可以通过覆盖其他一些成员来提供更有效的实现。

继承

构造函数

UnmodifiableMapBase()
const

属性

entries Iterable<MapEntry<K, V>>
此对象的Map条目。
无setter继承
hashCode int
此对象的哈希码。
无setter继承
isEmpty bool
表示在Map中没有键/值对。
无setter继承
isNotEmpty bool
表示在Map中至少有一个键/值对。
无setter继承
keys Iterable<K>
此对象的所有键。
无setter继承
length int
Map中键/值对的数量。
无setter继承
runtimeType Type
表示对象运行时类型的表示。
无setter继承
values Iterable<V>
此对象的所有值。
无setter继承

方法

addAll(Map<K, V> other) → void
不可修改的Map不支持此操作。
inherited
addEntries(Iterable<MapEntry<K, V>> entries) → void
不可修改的Map不支持此操作。
inherited
cast<RK, RV>() Map<RK, RV>
如需则为此映射提供具有 RK 键和 RV 实例的视图。
inherited
clear() → void
不可修改的Map不支持此操作。
inherited
containsKey(Object? key) bool
判断此映射是否包含指定的 key
inherited
containsValue(Object? value) bool
判断此映射是否包含指定的 value
inherited
forEach(void action(K key, V value)) → void
action 应用到映射中的每个键/值对。
inherited
map<K2, V2>(MapEntry<K2, V2> transform(K key, V value)) Map<K2, V2>
通过给定的 convert 函数返回一个新映射,其中包含由此映射所有条目转换的条目。
inherited
noSuchMethod(Invocation invocation) → dynamic
当访问不存在的方法或属性时调用。
inherited
putIfAbsent(K key, V ifAbsent()) → V
不可修改的Map不支持此操作。
inherited
remove(Object? key) → V?
不可修改的Map不支持此操作。
inherited
removeWhere(bool test(K key, V value)) → void
不可修改的Map不支持此操作。
inherited
toString() String
此对象的字符串表示。
inherited
update(K key, V update(V value), {V ifAbsent()?}) → V
不可修改的Map不支持此操作。
inherited
updateAll(V update(K key, V value)) → void
不可修改的Map不支持此操作。
inherited

运算符

operator ==(Object other) bool
等号运算符。
inherited
operator [](Object? key) → V?
对应于给定 key 的值,或者在 key 不在映射中时为 null
inherited
operator []=(K key, V value) → void
不可修改的Map不支持此操作。
inherited