Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Conditional Expressions and Null-Aware Operators | Conditional Logic in Dart
Dart Control Flow

bookConditional Expressions and Null-Aware Operators

Conditional expressions and null-aware operators in Dart provide powerful ways to write concise, readable code when handling decisions and optional values. The ternary operator allows you to choose between two expressions based on a condition, replacing simple if-else statements with a single line. Meanwhile, null-aware operators such as ??, ??=, ?., and ! help you safely work with variables that might be null, making it easier to provide defaults or avoid runtime errors when dealing with optional data.

main.dart

main.dart

copy
12345
void main() { bool isLoggedIn = true; String statusMessage = isLoggedIn ? 'Welcome back!' : 'Please log in.'; print(statusMessage); }

In the code above, the ternary operator checks the value of isLoggedIn. If isLoggedIn is true, statusMessage is set to "Welcome back!"; otherwise, it is set to "Please log in.". This one-liner replaces a longer if-else block, making your code shorter and easier to read. The general syntax is condition ? valueIfTrue : valueIfFalse;, which is ideal for straightforward decisions where only two outcomes are possible.

main.dart

main.dart

copy
12345
void main() { String? userInput; String name = userInput ?? 'Guest'; print('Hello, $name!'); }

Null-aware operators like ?? help you provide a fallback value when a variable might be null. In the previous example, userInput is declared as a nullable String. If userInput is null, the name variable is assigned "Guest" instead. This approach prevents null errors and eliminates the need for extra if statements. Using null-aware operators makes your code more robust and easier to maintain, especially when handling optional or user-provided data.

question mark

Which statement best describes when to use the ternary operator versus null-aware operators in Dart?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 2

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

bookConditional Expressions and Null-Aware Operators

Svep för att visa menyn

Conditional expressions and null-aware operators in Dart provide powerful ways to write concise, readable code when handling decisions and optional values. The ternary operator allows you to choose between two expressions based on a condition, replacing simple if-else statements with a single line. Meanwhile, null-aware operators such as ??, ??=, ?., and ! help you safely work with variables that might be null, making it easier to provide defaults or avoid runtime errors when dealing with optional data.

main.dart

main.dart

copy
12345
void main() { bool isLoggedIn = true; String statusMessage = isLoggedIn ? 'Welcome back!' : 'Please log in.'; print(statusMessage); }

In the code above, the ternary operator checks the value of isLoggedIn. If isLoggedIn is true, statusMessage is set to "Welcome back!"; otherwise, it is set to "Please log in.". This one-liner replaces a longer if-else block, making your code shorter and easier to read. The general syntax is condition ? valueIfTrue : valueIfFalse;, which is ideal for straightforward decisions where only two outcomes are possible.

main.dart

main.dart

copy
12345
void main() { String? userInput; String name = userInput ?? 'Guest'; print('Hello, $name!'); }

Null-aware operators like ?? help you provide a fallback value when a variable might be null. In the previous example, userInput is declared as a nullable String. If userInput is null, the name variable is assigned "Guest" instead. This approach prevents null errors and eliminates the need for extra if statements. Using null-aware operators makes your code more robust and easier to maintain, especially when handling optional or user-provided data.

question mark

Which statement best describes when to use the ternary operator versus null-aware operators in Dart?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 2
some-alt