制御フローについてまとめ。
1.繰り返し
繰り返し処理にはforを使う
for i in 1...9 {
print(i * 5)
}
for の後には定数,範囲を書く
forの中にforを入れることもできる
for i in 1...9 {
for x in 1...9 {
print(i * x)
}
}
これで1*1, 1*2,1*3…….9*8, 9*9が計算されて表示される。
2.条件分岐
条件によって処理を変えたいときはifをつかう。
if 条件 { 文 }
条件に使えるのは判定結果がbool値になる式のみ。
条件がtrueのときは文が実行される。Falseのときはなにもされない。
Falseのときに別の文を実行したいときはif elseを使う。
if 条件{ 文 } else { 文2 }
これで条件がFalseだったとき文2が実行される。
Aだったらa、Bだったらb、Cだったらc、それ以外ならdという処理のときは以下の通り。
if A { a } else if B { b } else if C { c } else { d }
条件をelse ifで続けていく。
forと同じようにifの中にifを書いたり、forの中にif、ifの中にforを書いたりもできる。
3.その他の制御フロー
forとif以外にも制御フローはある。
switch文
switch文はifと同様に処理を分岐できる。
ifとの違いは分岐が多いときにシンプルにコードを書ける。
switch 式 { case 定数A : 文1 case 定数B : 文2 ...... default : 文n }
式の値とcaseの後の定数を比較して結果がtrueになるところの文を実行する。
式の値と定数がすべて一致しないときはdefaultの文を実行する。
while文
while文はforと同じで繰り返し処理で使う。
forは回数を指定するが、whileは指定した条件がFalseになるまで処理を繰り返す、。
while 条件 { 文 }
使用例
var x = 0 while x < 3 { print(x) x = x + 1 } 実行結果 0 1 2 3
playgroundで自動実行にしてるとx = x + 1を書くまえにprint(x)が無限ループで実行されてしまうので注意する。
制御フローについてはこのくらいでしょう。
個人的にforとifを組み合わせて使うのが苦手というかよくわからなくなりがちなので頑張って使いこなせるようにしたい。
コメント