Swift基本講座

オプショナルな変数の作成

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

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
「値がない」ことを示すオプショナルな変数について説明します。辞書から取り出した値を使うときにもオプショナルな変数についての知識が必要になりますので、通常の変数との違いについてしっかりと理解してください。
講師:
06:46

字幕

このレッスンでは オプショナルな変数について説明します こちらの例をご覧下さい こちらでは現在 temperature という 現在の気温を示す変数を用意して そこに30という初期値を入れています ですので 下の方の文字列には その temperature を埋め込むことによって 「現在の気温は 30 度です。」という 文字列を表示しています ここで この30という気温が今現在 指定されていますが もしこの30度というデータを 例えばインターネットの上から ダウンロードして表示したいとか 或いはセンサーから取得したその値を 表示したいといった時には この最初30度になっているのが 何度なのか分からないという― 状態が生じます 但し だからと言ってこのように = 30 という 初期値の部分を消してしまうと この temperature の中には 何が入っているのか分からないと いうことになってしまいますので このようにエラーが表示されます エラーの中身は Variable 'temperature' used before being initialized と 書かれていますが 要するに 初期化される前に この temperature を使おうとしていますと 言って怒られています ではどうすればいいのかといって 一番分かり易い解決方法として 恐らくこのように = 0 という風にして temperature が0度ですよと いう風にしてしまうと そうすることによって 何も設定されてないときには temperature をまず0にしておいて これが何もない値であるということを 表すんだよという風に しておくこともできますが 摂氏0度というのは時々実際に起こってしまう 起きてしまう温度ですので 実際にこれが値が無いということを 示す為の一番良い方法かというと 残念ながらそうではないと いうことになります 値が無いことを示す一番良い方法は何かと いったときに出てくるのが オプショナルな変数を用意すると いうことになります オプショナルな変数というのは この temperature は Int 型ですよと いうことを指定した― この Int 型の後ろに?マークを つけることによって作成することができます このように?マークが付いた変数は オプショナルな変数といって ここにももう出てきていますが 「現在の気温は nil 度です。」という風に 現在この temperature という変数に 何も値が設定されていませんということが 明示されるような変数となっています ですのでこれ 「現在の気温は nil 度です。」と言って 人間に見せられても 人間は何だか分かりませんので アプリケーションを作っている時には 必ずこの temperature が 設定されてるのかどうなのかと いうことをしっかりと if 文でチェックしてやって もしも temperature が nil でない場合 即ち何か値がしっかりと設定されている時だけ この「現在の気温は~」という文字列を 表示して下さいというのが この if 文でチェックすることができます 実際に temperature が例えば 25度に設定された時には 「現在の気温は25度です。」と いう風に表示できます 但し ちょっと注意していただきたいのは この temperature というのは元々 Int? として オプショナルな変数として 宣言していますので これ表示する時にこのまま temperature を 埋め込もうとしてしまうと Optional (25) という風に 表示されてしまって Optional の可能性がありますよと いうことも人間に見えてしまいます この時に必要なのは temperature の この変数の後ろに !マークを書いてやるということです こうすることで この temperature の中には 値が格納されているということを 私は知っていますと いうことを明示できますので さっきの Optional ( ) というのが 表示されずに 「現在の気温は25度です。」というのが シンプルに このように表示されるように なります 但し これ temperature が nil でない場合 ということをしっかりチェックしているので これを使うことができますが もし temperature が 何も設定されていない nil のまま 更にこの temperature が nil かどうか チェックしないまま この temperature に ! マークを つけて書いてしまおうとすると 今処理がここで止まってしまって いることからも分かりますけど エラーとなってしまいますので 必ずこの temperature は nil でないと いうことを確認したうえで この println の中で temperature に ! マークをつけて参照すると― いうことができるということを 忘れないで下さい オプショナルの変数を使う2つ目の例として このように辞書を使いたいと思います この辞書の中には現在 KIX というキーに対して 関西国際空港や羽田空港といった 3文字コードに対する― 空港の名前が登録されているんですが ここの airports の中に含まれていない― 3文字コードを使って 例えば NGO という3文字を使って 空港のデータを取り出そうとすると nil が返ってきます airports の中から取り出したこの値-― 「空港の名前は~です」と ここでは result ですね result です という風に表示した時に 取り出したのは nil になりますから 当然「 nil です」と返ってきます 存在する空港だった場合に どうなるかと言うと 関西国際空港に対応した KIX を指定して 取り出した時に ちゃんと関西国際空港を取り出すことが できるんですが これも nil だったかもしれない ひょっとしたら KIX に対応している値が 現在登録されていないかもしれないと いうことを考えて Optional な値として取り出されています ですので「空港の名前は~です。」と 表示する所でも この result の後ろに ! マークをつけないと さっきみたいに Optional と 表示されてしまいますし この result の後ろに ! をつけたということは この result が nil ではないと いうことを前提に書いているコードに なりますので しっかりと result は nil ではないと いうことをチェックしてやって この result ノット = nil というのを チェックした後に result ! と書いて Optional な表示をしないと いうことを忘れないようにして下さい このレッスンではオプショナルな変数の 使い方について説明しました

Swift基本講座

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

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

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

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

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