Checking if a Key Exists
Part of the Fundamentals section of Coddy's Dart journey — lesson 63 of 94.
The containsKey() method checks if a map contains a specific key and returns a boolean result. This helps you verify if a key exists before trying to access its value.
Create a map of student scores:
Map<String, int> scores = {
'Alice': 95,
'Bob': 85,
'Charlie': 90
};Check if a key exists in the map:
bool hasAlice = scores.containsKey('Alice');
print('Map contains Alice: $hasAlice');After executing the above code, the output will be:
Map contains Alice: trueCheck for a key that doesn't exist:
bool hasDavid = scores.containsKey('David');
print('Map contains David: $hasDavid');After executing the above code, the output will be:
Map contains David: falseChallenge
BeginnerIn this challenge, you'll practice checking if a key exists in a Map using the containsKey method. This method returns true if the map contains the specified key, and false otherwise.
Complete the code to check if the userInfo map contains the key 'email'. If it does, set the message variable to 'Email found!'; otherwise, set it to 'Email not found!'.
Expected output:
Email found!Cheat sheet
The containsKey() method checks if a map contains a specific key and returns a boolean result:
Map<String, int> scores = {
'Alice': 95,
'Bob': 85,
'Charlie': 90
};
bool hasAlice = scores.containsKey('Alice');
print('Map contains Alice: $hasAlice'); // true
bool hasDavid = scores.containsKey('David');
print('Map contains David: $hasDavid'); // falseTry it yourself
void main() {
// This map is already defined for you
Map<String, String> userInfo = {
'name': 'John',
'email': 'john@example.com',
'address': '123 Main St'
};
// TODO: Check if the userInfo map contains the key 'email'
// If it does, set message to 'Email found!'
// Otherwise, set message to 'Email not found!'
String message = '';
// This will display the result
print(message);
}This lesson includes a short quiz. Start the lesson to answer it and track your progress.
All lessons in Fundamentals
4Operators Part 2
Comparison OperatorsLogical ANDLogical ORLogical NOTType Test OperatorsRecap - Making Comparisons7Working with Strings
String ConcatenationString InterpolationMulti-line StringsString PropertiesBasic String Methods10Collections - Maps Basics
What are Maps?Creating a MapAccessing Values by KeyKey-Value PairsGetting Map SizeGetting KeysGetting ValuesChecking if a Key Exists13Null Safety In Depth
Understanding NullNullable TypesNon-Nullable TypesNull Assertion OperatorLate InitializationRecap - Handling Null Safely16Fundamentals Challenges
Challenge: List of calculationChallenge: Sum of numbersChallenge: Find product2Variables and Basic Data Types
What are Variables?StringsIntegers (int)Doubles (double)Booleans (bool)Type Inference with 'var'Final VariablesConstant VariablesNaming ConventionsBasic Null SafetyRecap - Declaring Variables8Control Flow - Loops
The 'for' LoopThe 'while' LoopThe 'do-while' LoopUsing 'break' in LoopsUsing 'continue' in LoopsRecap - Repeating Code3Operators Part 1
Arithmetic OperatorsInteger DivisionModulo OperatorIncrement and DecrementAssignment ShortcutsRecap - Simple Calculations6Control Flow - Decision Making
The 'if' StatementThe 'else' StatementThe 'else if' StatementRecap - Simple DecisionsNested 'if' StatementsThe 'switch' Statement9Collections - Lists Basics
What are Lists?Creating a ListAccessing by IndexGetting List LengthAdding ElementsRemoving ElementsChecking if a List is EmptyIterating Over a List12Functions Advanced
Optional Positional ParametersNamed ParametersRequired Named ParametersDefault Parameter ValuesRecap - Function Parameters15Project: Simple Calculator
Setting UpDeclaring Number