【Swift】配列の使い方。インデックス番号をつけたデータの集まり。(Swift 2.1、XCode 7.2)

2020年6月16日

配列を作る

配列とは、複数のデータを1つの変数で管理できる入れ物のことをいう。

データを入れるための箱が番号付きで並べられていて、その中にデータを入れていくイメージである。箱の中に入れたデータを差し替えたり、箱を追加、削除することもできる。
配列のイメージ

 

タプル」は一度作ったらデータの追加、削除はできないが、「配列」ではそのあたりが柔軟にできる。なので、タプルは一度きりのデータセットの受け渡しに使い、配列は常にデータが変化する集合体の管理に使うといった使い分けが適している。ただし、var(変数)で宣言した配列は要素の変更が可能だが、let(定数)で宣言した配列は変更できない。

配列は以下のコードのように[値, 値, 値,…]で作る。型を指定しなければ、型の種類を混在させて格納できる。

 

以下のコードのように型を指定して配列を作れば格納するデータを制限できる。

 

空の配列を作るには以下のコードようにする。上記コードでは左辺に書いていた型の指定を右辺で書くことになるので混乱する。

 

配列の要素を取得する

配列の要素の値を参照するには、以下のコードのようにする。first, lastのプロパティで取得した場合はオプショナル型変数として要素が取得されるので、配列が空の場合はnilが戻る。

 

その他、配列の情報を知るプロパティには以下のようなものがある。

 

配列の要素を1つずつ取得しながら、要素数ぶんループするにはfor-in文を使って以下のようにする。

配列を操作する

配列の後ろに要素を追加するには以下のメソッドを用いる。

 

以下のコードは、空の配列を作ったあとにループ処理で要素を追加していく使用例

 

配列の任意の位置に要素を挿入するには以下のメソッドを使用する。引数いは追加する要素とインデックス番号を与える。インデックス番号は0から始まるので注意すること。

 

配列の要素を削除するには以下のメソッドを使用する。

 

配列のすべての要素を削除するには以下のメソッドを用いる。データ追加時に取得したメモリ空間は残しておく場合は引数にtrueを与える。

性能にどれだけ効果があるのかは未確認だが、削除、追加を繰り返す場合はメモリ空間を残しておいたほうが余計なメモリ取得処理が行われないのでスマートだ。