Swift Playgroundsで学ぶiOSプログラミング

同じ名前で複数のデータを記録する配列

文●柴田文彦 編集●吉田ヒロ

2016年09月26日 17時00分

繰り返し処理の中で行列を使う

 最初に述べた、繰り返し処理の中で配列を利用する方法は非常に簡単です。前回のfor〜inループを覚えているでしょうか。そこではループのカウンターとなる変数を利用できました。そのカウンター変数の値は、指定した範囲で1つずつ増えていくという性質を持っていました。これを配列のインデックスとして利用すれば、配列の中身をスキャンするように、1つずつ取り出すことができそうだと思うでしょう。

 ただし配列を扱うfor〜inループは、前回示したようなカウンター変数とその範囲を指定するfor〜inとは事情が異なります。まず範囲を指定する代わりに、配列そのものを指定するのです。すると、for〜inで最初に指定する変数を通して、その配列のすべての中身に直接アクセスできるようなループを自動的に構成できます。これを利用して、配列の要素を1つずつ取り出し、その値をコンソールに出力しながら、配列の要素の合計を計算し、ループが終わってからそれを出力するプログラムを書いてみましょう。

for〜inループは、配列の名前を指定することで、簡単に繰り返し処理を実現できます

 この場合、変数valに、配列ar3の中身の要素が1つずつ代入された状態で、中カッコの中が実行されます。それがすべての要素について繰り返されるのです。このvalは、前回のfor〜inの場合のように、カウンターと呼ぶのは不適切だと言えるでしょう。

配列の名前を指定したfor-inループでは、ループ変数に配列の要素が1つずつ代入された状態で{}の中が繰り返し実行されます

次回の予定

 今回は、行ベクトルに似た1次元の配列だけを取り上げ、初期化の方法や、特定の要素の値を調べる方法を示しました。次回は、既存の配列に要素を加えたり、そこから取り除いたりするような、配列特有の処理を紹介するとともに、2次元以上の配列を取り上げることにします。それをループの中でどのように扱うことができるのか、引き続き具体的な例を見ながら考えていきましょう。

mobileASCII.jp TOPページへ

mobile ASCII

Access Rankingアクセスランキング