Type Inference with 'var'
Part of the Fundamentals section of Coddy's Dart journey. Lesson 10 of 94.
In Dart, var enables type inference, where Dart automatically determines variable types from assigned values.
void main() {
var name = 'Dart Programmer';
print(name);
}Dart infers name as String. It works with other types too:
void main() {
var age = 25; // Inferred as int
var price = 19.99; // Inferred as double
var isAvailable = true; // Inferred as bool
print(age); // Outputs: 25
print(price); // Outputs: 19.99
print(isAvailable); // Outputs: true
}Challenge
BeginnerCreate a Dart program that demonstrates type inference with the var keyword:
- Declare a variable named
nameusingvarand assign it the string value"Dart" - Declare a variable named
yearusingvarand assign it the integer value2011 - Declare a variable named
versionusingvarand assign it the double value2.19 - Declare a variable named
isStronglyTypedusingvarand assign it the boolean valuetrue - Print each variable with a descriptive label in the following format:
Language: Dart Created in: 2011 Current version: 2.19 Is strongly typed: true
Your output must match this exact format.
Try it yourself
void main() {
// Declare your variables using var
var name = ?;
var year = ?;
var version = ?;
var isStronglyTyped = ?;
// Print the variables with labels
print("Language: " + name);
print("Created in: " + year.toString());
print("Current version: " + version.toString());
print("Is strongly typed: " + isStronglyTyped.toString());
}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 NumberPractice on your own: Online Dart compiler