operator [] method Null safety
- Object? key
override
The value for the given key
, or null
if key
is not in the map.
Some maps allow null
as a value.
For those maps, a lookup using this operator cannot distinguish between a
key not being in the map, and the key being there with a null
value.
Methods like containsKey or putIfAbsent can be used if the distinction
is important.
Implementation
@override
V? operator [](Object? key) {
for (var map in _maps) {
// Avoid two hash lookups on a positive hit.
var value = map[key];
if (value != null || map.containsKey(value)) {
return value;
}
}
return null;
}