检查键是否存在
本课属于 Coddy Dart 学习旅程的“基础知识”单元。第 63 课,共 94 课。
containsKey() 方法会检查映射中是否包含指定的键,并返回布尔值。这样你就可以在尝试访问键对应的值之前,先确认该键是否存在。
创建一个学生成绩映射:
Map<String, int> scores = {
'Alice': 95,
'Bob': 85,
'Charlie': 90
};检查映射中是否存在某个键:
bool hasAlice = scores.containsKey('Alice');
print('Map contains Alice: $hasAlice');运行上面的代码后,输出为:
Map contains Alice: true检查一个不存在的键:
bool hasDavid = scores.containsKey('David');
print('Map contains David: $hasDavid');运行上面的代码后,输出将是:
Map contains David: false挑战
入门在这个挑战中,你将练习使用 containsKey 方法检查 Map 中是否存在某个键。如果 Map 中包含指定的键,这个方法会返回 true,否则会返回 false。
补全代码,检查 userInfo Map 中是否包含键 'email'。如果包含,将 message 变量设为 '<code>Email found!';否则,将它设为 'Email not found!'。
预期输出:
Email found!亲手试试
void main() {
// 这个映射已经为你定义好了
Map<String, String> userInfo = {
'name': 'John',
'email': 'john@example.com',
'address': '123 Main St'
};
// TODO:检查 userInfo 映射中是否包含键 'email'
// 如果包含,就将 message 设置为说明中指定的原文
// 否则,将 message 设置为 'Email not found!'
String message = '';
// 这里会显示结果
print(message);
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: Dart 在线编译器