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

Conditional Expressions and Null-Aware Operators

Veeg om het menu te tonen

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

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

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?

Selecteer het correcte antwoord

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 1. Hoofdstuk 2

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Sectie 1. Hoofdstuk 2
some-alt