Conditional 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
12345void 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
12345void 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.
Thanks for your feedback!
Ask AI
Ask AI
Ask anything or try one of the suggested questions to begin our chat
Can you give more examples of using the ternary operator in Dart?
How do null-aware operators differ from regular null checks?
When should I use null-aware operators instead of traditional if statements?
Awesome!
Completion rate improved to 10
Conditional Expressions and Null-Aware Operators
Swipe to show menu
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
12345void 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
12345void 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.
Thanks for your feedback!