Default Parameter Values
Part of the Fundamentals section of Coddy's Dart journey — lesson 75 of 94.
Default parameter values allow you to specify fallback values for function parameters that aren't provided when the function is called.
Create a function with a default parameter value:
void greet(String name, [String greeting = 'Hello']) {
print('$greeting, $name!');
}
Call the function with and without the optional parameter:
void main() {
greet('Dart');
greet('Dart', 'Welcome');
}
After executing the above code, the output will be:
Hello, Dart!
Welcome, Dart!You can also use default values with named parameters:
void showInfo({required String name, int age = 30}) {
print('$name is $age years old');
}
void main() {
showInfo(name: 'Alex');
showInfo(name: 'Maya', age: 25);
}
After executing the above code, the output will be:
Alex is 30 years old
Maya is 25 years oldChallenge
BeginnerIn this challenge, you'll practice using default parameter values in Dart functions. Default parameter values allow you to specify a value that will be used if the parameter is not provided when calling the function.
Complete the greet function by adding a default value of "Hello" for the greeting parameter.
Expected output:
Hello, Alice!
Welcome, Bob!Cheat sheet
Default parameter values provide fallback values for function parameters when not provided during function calls.
For optional positional parameters, use square brackets with default values:
void greet(String name, [String greeting = 'Hello']) {
print('$greeting, $name!');
}
greet('Dart'); // Hello, Dart!
greet('Dart', 'Welcome'); // Welcome, Dart!
For named parameters, assign default values directly:
void showInfo({required String name, int age = 30}) {
print('$name is $age years old');
}
showInfo(name: 'Alex'); // Alex is 30 years old
showInfo(name: 'Maya', age: 25); // Maya is 25 years old
Try it yourself
void main() {
// These names are already defined for you
String name1 = 'Alice';
String name2 = 'Bob';
// TODO: Call the greet function twice:
// 1. Once with just name1 (should use the default greeting)
// 2. Once with name2 and the greeting "Welcome"
greet(name1);
greet(name2, "Welcome");
}
// TODO: Modify this function to add a default value of "Hello" for the greeting parameter
void greet(String name, String greeting) {
print('$greeting, $name!');
}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