変数は、あらかじめ宣言をしてから利用をします。宣言をせずに使ったり、あるいは既に宣言した変数を再度宣言したりするとエラーになります。変数の宣言は以下のように記述します。
var 変数 = 値
var 変数 :タイプ = 値
こんな具合に、初期値となる値を代入する形で宣言するのが一般的です。「最初に値を代入しないでおきたい」という場合は、こんな具合に書くこともできます。
var 変数: タイプ
●定数について変数は一般に値の変更が可能ですが、「後で変更できないようにしたい」という場合には、
定数を使うことができます。これは以下のように記述します。
let 定数 = 値
let 定数 : タイプ = 値
定数は、基本的に値の代入と宣言をセットで記述します。宣言だけしておき、後で値を代入することはできません。宣言時に代入された値が定数の値となり、以後、変更することはできません。
●変数のタイプについて見ればわかるように、変数(定数)の宣言をするときには、変数名だけでなく、タイプ(型)を指定することもできます。これを見て、「Swiftの変数は型が決まってない書き方も、決まった書き方もできるんだな」と思ってはいけません。
Swiftの変数は、基本的に
全て型が決まっています。変数を作成する際に、必ず型を指定しなければいけません。ではなぜ「
var 変数 = 値」といった書き方もできるのか?というと、代入する値から
型を推測して設定するからです。(だから、「
var 変数」だけだとエラーになります)
Swiftは、基本的に「
静的型付け」の言語なのです。すべての変数は、最初に必ず型を指定し、その型の値しか代入できません。
●型の種類Swiftには、多数の方が用意されています。主な型についてここで整理しておきましょう。
・整数Int――一般的な整数型です。32bitまたは64bitの値になります(実行するCPUによります)。
UInt――
Intと同じですが、こちらはプラスマイナスの符号がありません(つまりマイナスが使えません)。
Byte――8bit幅の値です。
Int8,
Int16,
Int32,
Int64――値のサイズを指定して変数を使うような場合は、これらを利用したほうがわかりやすいでしょう。それぞれ変数のbit数を示します。符号なし整数の
UInt8〜なども揃っています。
・実数(浮動小数)Float――32bit幅の浮動小数値です。
Double――64bit幅の浮動小数です。
Float32,
Float64,
Float80,
Float96――値のサイズを指定して浮動小数を扱いたい場合はこっちが便利でしょう。
Doubleでも精度が足りない、といった場合、96bit幅まで使えるんですね!
・テキストString――これが一般的なテキストです。
Character――1文字だけのテキストです。
・真偽値Bool――これがいわゆる真偽値です。
これらはいわば基本型ともいえるもので、この他にもSwiftで値の型として利用されるものはたくさんあります。
配列や
オブジェクト、「
タプル」「
オプショナル」といった値などです。これらは基本型に比べるとちょっとむずかしいので別途説明します。