Dart Academy · レッスン

Null対応演算子:?.、??、!

null値を安全に読み取り、デフォルト値を設定する

レッスン 4/413 ステップ

「Null対応演算子:?.、??、!」はCoddyKit上の無料Dart Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDart Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Dart Academyコースには全4レッスンが含まれています。

nullかもしれない値を扱う

Nullableの値は慎重に扱う必要があります。Dartのnull-aware演算子を使えば、値の読み取りとデフォルト値の設定を短い1ステップで行えます。✨

安全呼び出し演算子

?.を使うと、オブジェクトがnullでない場合にだけメンバーを呼び出せます。nullの場合、式全体がnullになります。

String? name;
int? len = name?.length;

nullでもクラッシュしない

?.を使うと、nullのオブジェクトは例外を投げずに処理を短絡します。プログラムはそのまま安全に動き続けます。

print(name?.toUpperCase());

if-null演算子

??演算子は代替値を指定します。左辺の値を返し、左辺がnullの場合は右辺の値を返します。

String label = name ?? 'Guest';

2つを連結する

2つを組み合わせましょう。?.で安全に読み取り、??でデフォルト値を指定すれば、必ず利用可能な値を得られます。

int len = name?.length ?? 0;

nullの場合に代入する

??=演算子は、変数が現在nullの場合にだけ代入します。デフォルト値を一度だけ設定する便利な方法です。

name ??= 'Anonymous';

bang演算子

!演算子は、値が今nullではないと断言し、Nullable型を通常の型に変換します。

int sure = name!.length;

bangは約束

!を使うということは、自分で責任を負うという意味です。値が実際にはnullだった場合、実行時に例外が発生するため、控えめに使いましょう。

bangよりチェックを優先する

確信がない場合は、明示的なifテストや??によるデフォルト値のほうが!より安全です。bangは確実な場合だけ使いましょう。

入れ子になったデータを読む

安全呼び出しの?.は複数のリンクを連結でき、エラーを発生させずに最初のnullで停止します。

var city = user?.address?.city;

適切なツールを選ぶ

安全に読み取るには?.、デフォルト値を設定するには??、値の存在を証明できる場合だけ!を使いましょう。

クイックチェック

値がnullの場合に代替値を指定する演算子はどれですか?

まとめ

null-awareツールを使いこなせるようになりました。?.は安全に読み取り、??はデフォルト値を指定し、!は確信がある場合にnullではないと断言します。🎯

無料で開始

AI チューターと学ぶ Dart — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「Null対応演算子:?.、??、!」レッスンは無料ですか?

はい。「Null対応演算子:?.、??、!」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Dart Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Dart Academyコースには全4レッスンが含まれています。

「Null対応演算子:?.、??、!」で何を学びますか?

null値を安全に読み取り、デフォルト値を設定する ブラウザで直接実行するハンズオンコードでDart Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Dart Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのDart Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「Null対応演算子:?.、??、!」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このDart Academyレッスンでコードを書いて実行できますか?

はい。すべてのDart Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 1行関数のアロー構文
  2. 匿名関数とクロージャ
  3. Nullable型と疑問符
  4. Null対応演算子:?.、??、!
← Dart Academyに戻る