不可修改的MapView<K, V>

不允许修改Map的Map视图。

一个Map的包装器,将所有成员传递给构造函数中提供的Map,除了修改Map的操作。修改操作会抛出异常。

final baseMap = <int, String>{1: 'Mars', 2: 'Mercury', 3: 'Venus'};
final unmodifiableMapView = UnmodifiableMapView(baseMap);

// Remove an entry from the original map.
baseMap.remove(3);
print(unmodifiableMapView); // {1: Mars, 2: Mercury}

unmodifiableMapView.remove(1); // Throws.
继承

构造函数

UnmodifiableMapView(Map<K, V> map)

属性

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

方法

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

运算符

operator ==(Object other) bool
等于运算符。
继承
operator [](Object? key) → V?
给定 key 的值,如果 key 不在映射中,则返回 null
继承
operator []=(K key, V value) → void
不可修改的Map不支持此操作。
继承