for(フォー)文は指定した回数だけ同じ処理を実行する制御構文です。
for文は用途に合わせて書き方がいくつか用意されています。今回は一番シンプルな構文を学びましょう。
for文は次のように書きます。
for 繰り返した回数の変数名 in 開始する値...終了する値 { 繰り返し実行する処理 }
まず「for」の次に、繰り返した回数の変数名を書きます。この変数は、何回繰り返したか分かるように用意されています。続けて繰り返しを開始する値と終了する値を「...」でつなぎます。さらに続けて「{」と「}」の間に繰り返し行う処理を書きます。
プログラムを書いてみましょう。次のプログラムは、同じ処理を5回繰り返すプログラムです。
for 回数 in 1...5 { println("\(回数)回目です") }
まず、繰り返した回数を記録するものとして「回数」という名前の変数を定義しています。この「回数」はfor文によって呼び出されるたびに1ずつ増えていきます。次に「in」に続けて「1...5」と書いています。これは「1回目から始めて5回目で終えてください」という意味になります。
そのため、このfor文によって繰り返す処理の中では、1回目は「回数」の値が「1」となり、繰り返されるごとに1ずつ増え、最後の5回目では「5」になります。
上記のfor文のプログラムをPlaygroundに書くと、結果画面には「5 times」と表示されています。「println("\(回数)回目です")」の出力結果ではなく、出力した回数が表示されているだけです。
for文によって繰り返し実行した結果を確認するには、「5times」の右側に表示されている目のマークをクリックします。すると別な画面で「5回目」と表示されます。
「5回目」となっているので、これはfor文によって繰り返し実行された、最後の処理結果です。全ての処理結果を確認するには、この画面の右上のボタンをクリックします。
このように、for文で繰り返し実行した結果を全て確認することができます。
for文の中では、for文の外で書かれている変数を繰り返すたびに変えていくことができます。例えば「繰り返すたびに1を加える」や「繰り返すたびに2を掛ける」といったプログラムが作れます。
早速、プログラムを書いてみましょう。次のプログラムは10回繰り返す中で、1回ごとに倍の値段に値上げしていくプログラムです。
var 値段 = 100 for 回数 in 1...10 { 値段 *= 2 } println("最終的な値段は\(値段)円")
「値段」は変化する値ですので、定数ではなく変数で定義しています。10回も繰り返しているので、最終的にはかなりの高額になります。
Playgroundでは、変数の値の変化をグラフで確認することができます。先ほどと同様に、結果画面の「10 times」の右側に表示されている目のマークをクリックしましょう。1回目から10回目にかけて、「値段」という変数の値がどのように変化していったかグラフで確認できます。
while(ホワイル)文はある条件を満たしている間、同じ処理を繰り返す制御構文です。
while文は、次のように書きます。
while 条件式 { 条件を満たしている間に繰り返し実行する処理 }
まず「while」を書き、次に条件式を書きます。続けて「{」と「}」の間に条件を満たしている間に繰り返し実行する処理を書きます。条件を満たしている間、このwhile文の中がずっと繰り返されるようになります。
プログラムを書いてみましょう。次のプログラムは、お寿司の皿の枚数を数えるプログラムです。食べた皿の枚数が10皿になるまで繰り返しています。
var 枚数 = 0 while 枚数 < 10 { 枚数 += 1 println("\(枚数)皿目") } println("お寿司を\(枚数)皿食べた")
今回は、if文とswitch文を使った条件によって処理を分ける方法、それからfor文とwhile文を使った条件の間に処理を繰り返す方法について解説しました。多くのiOSアプリはこれらの制御構文を使ったプログラムで作られており、さまざまな状況に臨機応変に対応できるようになっています。
今回紹介した制御構文は、Swiftに限らず他のプログラミング言語でも同様の機能がサポートされている場合が多いです。それぞれの制御構文の特徴と書き方を覚えておくことで、今後もいろいろな場面で役立つ知識になるはずです。
ぜひ、いろいろな条件を組み立てて、それがどのような結果になるのかたくさん試してみてください。
次回は、配列や辞書について解説しますので、お楽しみに。
Copyright © ITmedia, Inc. All Rights Reserved.