基本
Swiftの基本構文のところ
目次 [hide]
変数と定数
変数
変数は「var」をつけて宣言する。
1 2 | var a = 0 var b = "Hello" |
型を指定して宣言する場合は「変数名:型名」とする。
1 2 | var a:Int = 0 var b:String = "Hello" |
定数
定数は「let」をつけて宣言する。
1 2 | let a = 0 let b = "Hello" |
型を指定して宣言する場合は「定数名:型名」とする。
1 2 | let a:Int = 0 let b:String = "Hello" |
オプショナル型
nilが入る可能性がある変数はオプショナル型にする。
変数、定数の宣言には「?」「!」を取り出し時には「!」を使用する。
宣言時に「!」とした場合、取り出し時に「!」は不要。
1 2 3 4 5 | var a:Int? = 123 let b:String! = "Hello" println(a!) println(b) |
タプル
複数の値を1個の値として扱えるようになる。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | // 宣言 var tpl = ("りんご", 80) // 取得 print(tpl.0) print(tpl.1) // 型を指定して宣言 var tpl:(String, String, Int) = ("りんご", "赤", 80) // ラベル付き var tpl = (name: "りんご", price: 80) // 取得 print(tpl.name) print(tpl.price) |
他の言語とあまり変わらない感じ!
分岐
if文
1 2 3 4 5 6 7 8 | if a == 1 { code else if a == 2 { code } else { code } |
switch文
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | switch a { case 0: // 0の時 code case 1: // 1の時 code case 2...5: // 2〜5の時 code default: // それ以外の場合 code } |
()のような括弧がいらない。
switch文にbreakがいらない、しかも範囲指定もできる!
イイね!
switch文にbreakがいらない、しかも範囲指定もできる!
イイね!
繰り返し
for文
1 2 3 4 5 6 7 8 9 | // nが0〜9まで繰り返す for n in 0...9 { code } // 配列のループ var array = ["りんご", "トマト", "梨"] for item in array { println(item) } |
for文にラベルをつけることも可能です。
1 2 3 4 5 6 7 8 9 10 11 12 | loop1: for i in 0...9 { loop2: for j in 0...9 { if i * j == 25 { // loop1を次に進める continue loop1 } else if i * j == 30 { // loop1を終わらせる break loop1 } } } |
while文
1 2 3 4 | var n = 0 while n < 5 { n++ } |
他の言語よりfor文の構文が短くて済む感じ!
配列
1 2 3 4 5 6 7 8 9 10 11 | // 宣言、格納 var array = ["りんご", "トマト", "梨"] // 取得 println(array[0]) // 追加 array.append("みかん") // 削除 array.removeAtIndex(2) |
他の言語とそんなに変わらない
辞書
キーと値の組み合わせ
1 2 3 4 5 6 7 8 9 10 11 12 | // 宣言、格納 var dict = ["りんご": 100, "トマト": 30, "梨": 200] // 取得 println(dict["りんご"]) // 追加 dict["みかん"] = 80 // 削除 dict["りんご"] = nil dict.removeValueForKey("みかん") |
そんなに違和感はない感じ