IT

Swift: Optional型やらアンラップやら・・・

投稿日:

やっぱりわけがわからなくなるので、備忘録。

型名?
var megs: String? // 型名に?を付けると、Optional型になる。

型名!
var msg: String! //!だと、初期値だけOptional型でnilに対応できる。その後、値が設定された後はnilにならない場合に良い。暗黙的アンラップ

インスタンス名?
Optional Chaining – Optional型プロパティをnilチェックし、さらにその中のプロパティもnilでないなら、と連続して確認する方法。nilでもそうでなくても、処理する。

if let s = user?.name?.uppercased()

 

インスタンス名!
print(msg!) // インスタンス名に!を付けると、Optionalというカプセルをアンラップして値を取り出せる。

-IT

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

Xcode: 既存プロジェクトファイルを複製して別アプリを作る

ここを見た。Xcode内でプロジェクト名を変更してリンク先ファイルを自動変更してくれても、なぜかファイルパスがずれる事がある。   http://kubou.net/archives/325 …

Rakuten UN-LIMITのeSIMを副回線としてiPhone11に設定してみた

iPhone11をソフトバンク回線で使用していましたが、固定回線への通話料金を節約する方法をずっと探していました。安い通話料を実現するいろんなIP電話アプリもあるのですが、いろいろ調べていくうちに、1 …

MEMO: 超初心者向け:プロパティとメソッド

プロパティは、ドットの次に書くもの(変数)で、 メソッドは、ドットの次に書いた後に、最後に格好がつきます。カッコ内に値を入れられます。   ・プロパティ例:tom.name ・メソッド例:t …

MacBook Pro 2016 Touch Barが充電不能?

この前、めっちゃ焦りました。MacBook Proが充電してくれないのです。これまで想像した事も聞いた事もなかった不具合です。   OSが起動しないとか、そんなかわいいレベルの不具合ではあり …

初心者のアプリ制作には計算機がいい

プログラミングではユーザーとアプリとのインタラクティブ性を考慮することが重要になります。 コマンドラインやWebブラウザ等を使えばその入出力パスの考え方は簡単ですが、アプリの場合GUIパーツから作らな …