Dart Academy · レッスン

論理演算子と短絡評価

and、or、notで条件を組み合わせる

レッスン 3/413 ステップ

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

条件の組み合わせ

実際の判断は、多くの場合、複数の要素に左右されます。Dartでは論理演算子を使って条件を組み合わせ、より複雑な問いを表せます。🧩

Andは両方を意味します

&&演算子は、左右の両方がtrueの場合にのみtrueになります。どちらか一方がfalseなら、式全体がfalseになります。

bool ok = age >= 18 && hasTicket;

Orはいずれかを意味します

||演算子は、少なくとも一方がtrueの場合にtrueになります。両方がfalseの場合にのみfalseになります。

bool free = isMember || hasCoupon;

Notは反転させます

条件の前に!を置くと、その条件を反転できます。何かが空でないことを確認するなど、反対の条件を尋ねるときに便利です。

if (!name.isEmpty) {
  print("Hello");
}

演算子の組み合わせ

1つの式の中で演算子を組み合わせられます。Dartは&&を||より先に評価するため、意図を明確にするには括弧を使ってください。

bool allow = isAdmin || (loggedIn && verified);

&&の短絡評価

&&の左辺がfalseなら、Dartは結果がfalseだとすでに判断できます。そのため、処理を節約するために右辺全体をスキップします。

if (user != null && user.active) {
  greet(user);
}

||の短絡評価

||の左辺がtrueなら、結果はすでにtrueです。Dartはそこで処理を止め、右辺を評価しません。

if (cached || fetchFromNetwork()) {
  render();
}

短絡評価で安全性を高める

このスキップは、単に処理を速くするだけではありません。&&の左辺で右辺を保護できるため、null値の読み取りといったエラーを避けられます。

if (list.isNotEmpty && list.first > 0) {}

ガードの順序

評価は左から右へ行われるため、より低コストまたは安全なチェックを先に置いてください。条件の順序は本当に重要です。

if (file != null && file.exists()) {}

複合的な論理式を読み解く

論理が複雑になったら、各部分を分かりやすい名前のbool変数に格納してください。巧妙な1行コードより、明確な名前のほうが常に優れています。

bool canEdit = isOwner || isEditor;
if (canEdit) save();

論理でスマートなコードを実現する

&&、||、!に加えて短絡評価を使えば、正確なルールを表現しながら、より安全な条件を一度に記述できます。🛡️

クイックチェック

左辺がfalseの場合、Dartは&&の右辺をどう処理しますか?

まとめ

&&は両方、||はいずれか、!は反転を表すこと、そして短絡評価によって処理をスキップし、エラーを防げることを学びました。🎉

無料で開始

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

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

コース
30
レッスン
120

よくある質問

「論理演算子と短絡評価」レッスンは無料ですか?

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

「論理演算子と短絡評価」で何を学びますか?

and、or、notで条件を組み合わせる ブラウザで直接実行するハンズオンコードでDart Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

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

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

「論理演算子と短絡評価」レッスンにはどのくらい時間がかかりますか?

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

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

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

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

  1. ブール値と比較演算子
  2. if、else if、else
  3. 論理演算子と短絡評価
  4. 三項演算子とswitch式
← Dart Academyに戻る