Swiftの型と変数の利用
Swiftで利用できる型については、Objective-Cとほぼ同じです。変数に関しては、Objective-Cよりも柔軟な扱いとなり、軽量プログラミング言語のような書き方が可能となります。
基本的な型の種類
Swiftでよく利用される型には次のものがあります。
型名 | 概要 |
---|---|
Int | 整数値 |
Float | 32bitの浮動小数点 |
Double | 64bitの浮動小数点 |
String | 文字列 |
Bool | true/falseの2値型 |
Array | 配列型 |
Dictionary | 辞書型 |
Objective-CではYES/NOで表現されていたBool型は、Swiftではtrue/falseで表現されます。
変数の宣言
変数を宣言するときには、変数名の頭にvarをつけます。varには、「再代入による値の変更が可能な変数を宣言する」いう意味があります。
var 変数名[:型] = 値
前述の通り、型を指定せずに変数を宣言することも出来ます。型を指定しない場合は、プログラムを簡潔に早く記述することができます。ただし、複数のメンバーで開発する場合には、変数の意味を理解するためにコードを読まなければならず、開発に時間がかかってしまう場合もあります。複数のメンバーで開発する場合は、Objective-Cと同様に型を明記したほうがいいです。また、一度に複数の変数を宣言することも可能です。
// 変数の宣言 var lang:String = "Swift" // 複数の変数をまとめて宣言 var (a:Int, b:String) = (1, "Hello")
nilを許容する型
Swiftには、変数を参照した際にnilで落ちることを防ぐ、という機能があります。Objective-Cでは、すべての変数が空(nil)である可能性を考慮してプログラムを行わなければなりません。そのため、処理を行う前に、try-catch等で変数のnil対策を行う必要があり、ソースコードが冗長になりがちです。
これに対してSwiftでは、最初から変数がnilである可能性をもたせて宣言することができます。このように変数を宣言することを、nil/nilでないという選択肢をもっているという意味でOptional型といいます。
// 空かもしれない変数を宣言 var num:Int? = 3
上記のように記述するだけで、変数にnilが入る可能性を宣言できます。このように変数を宣言することを「wrapする」「Optionalを適適用する」と言います。Optionalを適応することで、アプリの実行時にnilで落ちることを防げます。
Optional型で宣言した変数は、nilを許さない処理ではそのままでは利用できません。nilでなく値が入っているということを明示的に示す必要があります。このことを「unwrapする」といい、具体的には次のように変数の後ろに「!」をつけて行います。
// 変数numが空でないことを明記して加算を実行 var sum = num!+1 println(sum) // 「4」を出力
上記のサンプルでは、変数numがnilでないことを明記して、変数がnilであれば実行できない加算を行っています。Xcodeのコンソールにログを出力する場合は、上記のようにprintln関数を利用します。
まとめ
今回はSwiftを利用する環境の構築、Swiftのプログラムを試すためのプロジェクトの作成まで行いました。次回では、Objective-Cに比べて簡単になった文法や追加された演算子等の基本的なプログラムの記述について説明を行う予定です。