三項演算子とswitch式
長いifの連鎖を使わず簡潔に値を選ぶ
「三項演算子とswitch式」はCoddyKit上の無料Dart Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDart Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Dart Academyコースには全4レッスンが含まれています。
値を簡潔に選択する
長いifの連続はコードを読みにくくします。Dartには、条件に基づいて値を選択するための、より短い方法があります。見ていきましょう。✂️
三項演算子
ternaryは、condition ? valueIfTrue : valueIfFalseという形で読みます。2つの値のどちらかを返す、簡潔なif-elseです。
String label = isOn ? "On" : "Off";三項演算子は値を返します
通常のifとは異なり、ternaryは式です。そのため、変数への代入、引数、returnの中にそのまま記述できます。
int max = a > b ? a : b;三項演算子はシンプルに保つ
ternaryは、1回の簡単な選択に適しています。深くネストし始めたら、読みやすさを保つためにif-elseまたはswitchを使ってください。
var fee = isMember ? 0 : 10;ケースが多い場合
1つの値に基づいて3つ以上の結果に分岐する場合は、長いelse ifの連続よりもswitch式のほうが明確です。
switch式
最新のswitch式は、=>を使って値とパターンを照合し、結果を返します。ここではbreakが必要ないことに注意してください。
var name = switch (day) {
1 => "Mon",
2 => "Tue",
};_によるデフォルト
すべてに一致するケースとしてワイルドカード_を使います。他のどのパターンにも一致しない場合に実行されるため、switchを完全かつ安全に保てます。
var s = switch (code) {
200 => "OK",
_ => "Other",
};switchも値を返します
ternaryと同様に、switch式も値を生成します。変数を変更する代わりに、結果を直接代入できます。
String icon = switch (status) {
"win" => "🏆",
_ => "❓",
};複数の値を照合する
1つのcaseの中で||を使って選択肢を組み合わせると、複数の入力に同じ結果を割り当てられます。関連するケースをまとめて記述できます。
var kind = switch (n) {
1 || 2 || 3 => "low",
_ => "high",
};ternaryとswitchの比較
結果がちょうど2つの場合はternaryを使い、1つの値から複数の結果に対応付ける場合はswitchを使ってください。
簡潔で読みやすいコード
ternaryとswitch式を適切に使うと、かさばるifの連続を、ほぼ自然言語のように読めるコードに置き換えられます。🎯
クイックチェック
Dartで正しい三項演算子の構文はどれですか?
まとめ
これで、2つの結果にはternaryを、多くの結果にはswitch式を使って、どちらも値を返す形で、すばやく値を選べるようになりました。🎉
よくある質問
「三項演算子とswitch式」レッスンは無料ですか?
はい。「三項演算子とswitch式」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Dart Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Dart Academyコースには全4レッスンが含まれています。
「三項演算子とswitch式」で何を学びますか?
長いifの連鎖を使わず簡潔に値を選ぶ ブラウザで直接実行するハンズオンコードでDart Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Dart Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのDart Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「三項演算子とswitch式」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このDart Academyレッスンでコードを書いて実行できますか?
はい。すべてのDart Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- ブール値と比較演算子
- if、else if、else
- 論理演算子と短絡評価
- 三項演算子とswitch式