配列はわかるけど、どう使う? | Swift初心者

配列に関して、丁寧に解説してある書物は多々目にしましたが、どうアプリとして使うか言及している書物はあまりお目にかかりません。

私も、初めて見た時、数式としてはふーんぐらいで終わってしまいました。

でも肝心なことはアプリとしてどう使うねん!ということですよね。。

実際配列は同じ類い(型)のデータを一緒に保管してくれます。
同じ類いとは数字とか文字のことで、数字だとしたら配列:arrに11, 12, 13 を以下のようにして保管します。

コンピューターでは最初の数字は1ではなく、0なので配列の最初を取り出したい時は0を指定して取り出します。2番目のものは1を指定して取り出すのでここは注意が必要ですね。

「例」
var arr = [11, 12, 13]
print(arr[0]) //-> なら11を出力
print(arr[1]) //-> なら12を出力
print(arr[2]) //-> なら13を出力

でも、やはりここまでの知識だとふーんで終わってしまいますね。

だからいきなり実用例に飛びます。

これだけでいいんですかと思われてしまいますが、そういう方に言いましょう。
とりあえずこれだけの知識で大丈夫です!!

配列は実は奥深く、ものすごい深い論理式まであるのですが、iPhoneを動かすのみでしたら最初は以上の知識で十分だと思っております。プログラミング習得のコツは体系的に全部理解する前にすぐ実演に移ることです。覚える物事が多くなると、最初の大事な方をすぐ忘れてしまったりするのでちょっと覚えたらすぐ実用してみることをお勧めします。

Mac Xcodeのプレイグラウンド(Playground)で上のコードをコピペしてみてください。
出力に11, 12, 13 が表示されるはずです。

確認頂いたところで、それではループ処理を再び紹介させてください。

やはりアプリとして実際に配列を使う場面では前回のブログ記事で書かせていただいたループ処理との連携が一番いいですね。

配列はこれだけでは単なるハイレツですがループ処理と連携させると一気に人間の処理能力を超えます。

そもそもせっかくアプリを作るのであれば人間ができないことをさせなければ意味がありません。

結局、紙と鉛筆で書き留めた方が早いじゃん!などと言われてしまっては開発者魂のプライドがズタズタにされてしまいます。だから、人間のできないことをさせるにはどうしたら良いかを考えることがiPhoneアプリ開発の近道になると信じております。

では配列とループ処理を組み合わせた一例です。
先にコピペ頂いたコードの下に以下のコードをコピペしてみてください。

var i = 14
repeat {
arr.append(i)
i += 1
} while (i<100)

これでarrに一気に11~99までの値を保管することができました。
「i += 1」のところを「i += 2」にしたらどうなるでしょうか?
またi = 14のところを24にしたらどうなるでしょうか?

答えは教えませんが、動くコードを見つけたらちょっと変えたりして実験してみることは大切ですね。
理解力と応用力がしっかりと身につきます。また英語が苦手でしたら最低限の英単語は見につけましょうね。
Swift言語はappendのように結構英単語が登場します。わかる単語であればすぐに動きが直感的にわかるようになるので、知っていると知っていないでは後々に雲泥の差となります。

この機能は私の語学学習アプリCatch Questionsでは単語帳などの登録機能のベーシックな構造にもなっております。

実際、配列より辞書型の方が単語帳としては便利のため、そちらも使ってはいるのですが配列の動きをしっかり理解すれば辞書型の動きもすっと頭に入るかと思います。

是非、配列を色々と作ってはいじくってみてください。



この記事へのコメント