Understanding Null
Part of the Fundamentals section of Coddy's Dart journey — lesson 77 of 94.
Null in Dart represents the absence of a value. By default, variables in Dart cannot be null unless explicitly allowed.
Create a variable that can be null by adding a question mark after the type:
String? name = null;
print(name);After executing the above code, the output will be:
nullRegular variables cannot be null and must have a value:
// This would cause an error:
// String name = null;
// This is valid:
String name = 'Dart';
print(name);After executing the above code, the output will be:
DartChallenge
EasyIn this challenge, you'll practice working with nullable variables in Dart. A nullable variable can hold either a value or null.
Complete the code to check if the username variable is null. If it is, assign the string "Guest" to the displayName variable. If username is not null, assign the value of username to displayName.
Expected output:
Welcome, Guest!Cheat sheet
In Dart, null represents the absence of a value. Variables cannot be null by default unless explicitly allowed.
Create a nullable variable by adding a question mark after the type:
String? name = null;Regular variables must have a value and cannot be null:
String name = 'Dart'; // Valid
// String name = null; // ErrorTry it yourself
void main() {
// This nullable String variable is already defined for you
String? username = null;
// TODO: Check if username is null
// If it is null, set displayName to "Guest"
// If it is not null, set displayName to the value of username
String displayName = "";
// This will display the welcome message
print("Welcome, $displayName!");
}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