Null 断定演算子
CoddyのDartジャーニー「基礎」セクションの一部 — レッスン 80/94。
null 確言演算子 (!) は、コードのその箇所で null 可能な変数が確実に null でないことを Dart に伝えます。Dart に null 可能な型を非 null 型として扱うよう強制します。
null 可能な文字列変数を作成:
String? name = 'Dart';
null アサーション演算子を使用して、それを non-nullable として扱います:
String nonNullableName = name!;
print(nonNullableName);
上記のコードを実行した後、出力は次のようになります:
Dart注意!変数が実際に null の場合、プログラムがクラッシュします:
String? language = null;
// String nonNullable = language!; // This would crash at runtime
チャレンジ
初心者このチャレンジでは、Dart の Null Assertion Operator (!) の使用を練習します。この演算子は、コードの特定の箇所で nullable 変数が確実に null でないことを Dart に伝えます。
以下のコードを完成させて、null assertion operator を使用し、nullable な username 変数を non-nullable な string に変換して displayName に割り当ててください。
期待される出力:
Welcome, DartLearner!チートシート
null 断定演算子 (!) は、コードのその時点で nullable 変数が確実に null でないことを Dart に伝えます。nullable 型を non-nullable として扱うよう Dart に強制します。
String? name = 'Dart';
String nonNullableName = name!;
print(nonNullableName); // Output: Dart
警告: 変数が実際に null の場合、プログラムは実行時にクラッシュします:
String? language = null;
// String nonNullable = language!; // This would crash
自分で試してみよう
void main() {
// この nullable String 変数はすでに null でない値を持っています
String? username = 'DartLearner';
// TODO: null 確言演算子 (!) を使用して username を
// nullable String から non-nullable String に変換する
// displayName に割り当てられるようにする
String displayName;
// これで歓迎メッセージが表示されます
print('Welcome, $displayName!');
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。