dart:collection
库中SplayTreeMap.putIfAbsent
方法的用法介绍如下。
用法:
V putIfAbsent(
K key,
V ifAbsent(
)
)
override
查找 key
的值,如果不存在则添加一个新条目。
返回与 key
关联的值(如果有)。否则调用ifAbsent
以获取新值,将key
与该值相关联,然后返回新值。
final diameters = <num, String>{1.0: 'Earth'};
final otherDiameters = <double, String>{0.383: 'Mercury', 0.949: 'Venus'};
for (final item in otherDiameters.entries) {
diameters.putIfAbsent(item.key, () => item.value);
}
print(diameters); // {1.0: Earth, 0.383: Mercury, 0.949: Venus}
// If the key already exists, the current value is returned.
final result = diameters.putIfAbsent(0.383, () => 'Random');
print(result); // Mercury
print(diameters); // {1.0: Earth, 0.383: Mercury, 0.949: Venus}
调用 ifAbsent
不得在映射中添加或删除键。
相关用法
- Dart SplayTreeMap.from用法及代码示例
- Dart SplayTreeMap.containsValue用法及代码示例
- Dart SplayTreeMap.addAll用法及代码示例
- Dart SplayTreeMap.fromIterables用法及代码示例
- Dart SplayTreeMap.fromIterable用法及代码示例
- Dart SplayTreeMap.clear用法及代码示例
- Dart SplayTreeMap.forEach用法及代码示例
- Dart SplayTreeMap.remove用法及代码示例
- Dart SplayTreeMap.containsKey用法及代码示例
- Dart SplayTreeMap.of用法及代码示例
- Dart SplayTreeMap.updateAll用法及代码示例
- Dart SplayTreeMap.update用法及代码示例
- Dart SplayTreeMap用法及代码示例
- Dart SplayTreeSet.lookup用法及代码示例
- Dart SplayTreeSet.isEmpty用法及代码示例
- Dart SplayTreeSet用法及代码示例
- Dart SplayTreeSet.addAll用法及代码示例
- Dart SplayTreeSet.remove用法及代码示例
- Dart SplayTreeSet.isNotEmpty用法及代码示例
- Dart SplayTreeSet.retainAll用法及代码示例
- Dart SplayTreeSet.toSet用法及代码示例
- Dart SplayTreeSet.clear用法及代码示例
- Dart SplayTreeSet.removeAll用法及代码示例
- Dart SplayTreeSet.of用法及代码示例
- Dart SplayTreeSet.from用法及代码示例
注:本文由纯净天空筛选整理自dart.dev大神的英文原创作品 putIfAbsent method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。