Swift基本講座

switch文を使ってみよう

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
Swiftにおけるswitch文の使い方を説明します。switch文は注意点が多いので、Swiftならではのポイントをしっかりと押さえておきましょう。
講師:
05:42

字幕

このレッスンでは switch 文の 使い方について説明します まず こちらのプログラムをご覧ください 現在 windSpeed という風の強さを表す 変数が1つ用意してあり 初期値は2になっています そしてこの windSpeed が0なのか 1なのか 2なのか 3なのかと いうことに応じて処理を振り分けています このように1つの変数に対して 複数回の == を使ってチェックをして いるような if 文が出てきたとき switch 文を使うことが考えられます switch 文の使い方は非常に簡単です switch というキーワードを書いた後ろに windSpeed という風に ターゲットになる変数の名前を 書いてやります そして case というキーワードを使って この windSpeed がとり得る値を 書いていきます 0が来た時 1が来た時 2が来た時 3が来た時に それぞれどのような仕事をするのかと いうことを書いていきます 風が吹いていませんというのが 0の場合なので 「風が吹いていません。」 そして「少し風が出てきました。」 「風が強くなってきています。」 「台風です!」 それぞれコピー&ペーストで埋めていくと このようになります 但し C 言語ファミリーである C++ であるとか Objective-C といった言語では これだけで動いてくれるんですが Swift では必ずこの0から3以外の値が やってきた時に どのような処理をするのかを 明示してやる必要があります ですので0~3以外の値がやってきた時には このような処理をしますということを 示すデフォルトという case を 更に追加してやる必要があります 例えば 「未知の風速です。」 このように書いてやることで 0~3以外の値がやってきた時に 対処することができます もしも何もする必要がない時には println の代わりに break を書くことによって 何もしないということを明示してください このようにSwift の switch 文では case を書くだけではなく その case が全ての場合を 網羅しているということを 保証しなければいけないようになっています また Swift の case 文の中には 必ず1行はコードを書かなければいけないと いう規則もあります ですので例えば case 0 をこのまま なにも書かずに放っておくことはできません 必ず何か書いてやらなければいけないので このように「風が吹いていません。」と いうことを書いておかなければいけない あと C 言語ファミリーでこれまで プログラムされてきた方には 恐らく break 文がこの後ろに無いことに すごい不安感を覚える方も いるんじゃないかなと思うんですが Swift ではこのように break を 明示的に書かないといけないということが 無くなりました どういうことかと言うと case 0 の中身はこの println の 「風が吹いていません。」だけですので 「少し風がでてきました。」というこの処理に 0からジャンプして 「少し風が出てきました。」というのを 表示してしまうということが起きません このように上から下に対して プログラムのコードを 連続して実行してしまうことを 「フォールスルー」と言うんですが フォールスルーは Swift では 起きないようになっています ですので break は明示的に書かなくても 構いませんので case 0 の場合はこういうことをして下さい case 1 の場合はこういうことをして下さいと いうことを単純に1個1個書いていくだけで switch 文の記述は完了します Objective-C や C 言語のファミリーでは自動的に フォールスルーすることによって 様々なバグが起きるということが 非常に多かったので 自動的にフォールスルーしないように Swift では初めから改良されています もしも本当にフォールスルーが 必要な時が出てきたら fallthrough というキーワードをこのように 書いてあげることで フォールスルーを強制的に行うことができます ただあまりこの fallthrough というのは 余程のことがない限り使わない方が バグを引き起こさなくて 良いプログラムになるんじゃないかなと 思います それから Swift の switch 文では 範囲指定演算子というものを 使うことができます どのようなものかと言いますと 例えば0~2の間は 「風が吹いていません。」 そして2~3の間は 「風が強くなってきています。」 4~6になれば これは「台風です!」と いったように ~以上~以下の場合には どういう処理をすると アッ 1つ間違えてますね 0~1にしましょうか 0~1の間は「風が吹いていません。」 2~3の間は「風が強くなって きています。」というように このように 範囲を指定することによって 場合分けを行うことができるような― この範囲指定演算子というものを switch 文でサポートされています このレッスンでは Swift における switch 文の基本的な使い方と フォールスルーなどの注意点について 説明しました

Swift基本講座

このコースでは、iOSやOS X用のアプリをとても簡単に開発することができるプログラミング言語Swiftについて解説します。if文やfor文などの制御命令の使い方から変数や定数、配列や辞書の使い方まで基本的なSwiftプログラミングの知識をPlayground上で説明します。Swiftプログラミングの知識を効率的に学ぶのに、このコースをぜひお役立てください。

2時間59分 (35 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 2,990
発売日:2015年09月23日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。