Swift のタプルと配列の違い
Swiftのタプルと配列は両方とも、複数の値を保持するために使用されますが、違いがあります:
- 配列は同じ型の要素の順序付けられた集合ですが、タプルは異なる型の要素を含みます。
- 配列は角括弧 ([ ])、タプルは丸括弧 (( )) で要素を作成して参照します。
- 配列を作成する:let array = [1, 2, 3]
- タプルを作成する:let tuple = (1, “two”, 3.0)
- 配列要素へのアクセス:let element = array[0]
- タプルの要素にアクセス:let firstElement = タプル.0
- 可変性:配列は可変で、要素の追加、削除、変更ができます。一方、タプルは不変で、作成後、要素の値を変更することはできません。
- 変更可能な配列: var mutableArray = [1, 2, 3]
- 変更不可能なタプル:let immutableTuple = (1, 2, 3)
- 可変配列の変更:mutableArray[0] = 10
- 不変タプルは変更できません: immutableTuple.0 = 10 // コンパイルエラー
- サイズと順序:配列は動的に大きくしたり小さくしたりでき、要素の挿入順序を保持します。タプルのサイズは固定されていて、一度作成すると変更できません。
- サイズと順番は自動的に変更されます。var array = [1, 2, 3]
- タプルはサイズと順番が固定されています:let tuple = (1, 2, 3)
- 末尾に要素を追加:array.append(4)
- タプルに要素を追加することはできません: tuple.append(4) // コンパイルエラー
つまり、配列は同じタイプの要素が順番に並んだ集合を格納するために利用でき、増減改查を行うことができます。タプルは異なるタイプの要素を格納するために利用でき、一般的には複数の値を一時的に保持および渡すために使用します。