タプル

タプルとは

(値,値,値... )
タプル
  • 複数のデータを,で区切って順序をつけたもの
  • 配列と同じようにインデックス番号を用いて値へアクセスできます。
  • 配列は[]内がすべて同じ型でしたが、タプルは異なる型を混ぜることができます。
配列とタプルの違い

for文で複数のデータを使って何かの処理を行うときは必ず配列を使用します。

タプルは簡単にデータをまとめておきたい場合に使用します。

var nums = (10,20,30,100)
var strs = ("あか","あお","きいろ")

var mixTup = ("Hello",10,3.14,true)
タプルは異なる型を混ぜることできる

print(type(of:mixTup))で型名を確認するとString型、Int型、Float型、Bool型と表示されます。

タプルの値のアクセス方法

データ.インデックス番号
var nums = (10,20,30,100)

print(num.0)
print(num.1)
print(num.2)
print(num.3)
  • インデックス番号は配列と同じで0からつけていきます。
  • print(num.0)で10が表示されます。
  • print(num.1)で20が表示されます。
  • print(num.2)で30が表示されます。
  • print(num.3)で100が表示されます。

タプルの使いかた

タプルを使ってできること
  • 変数の宣言時に初期値も型名もわからないときに、全型名を指定しておくことができます。
  • タプルを使って変数をまとめて定義することができます。
  • タプルではネストができます。

初期値も型名もわからないときに、タプルで型名を指定しておくことができる

var tup:(Int,Float,Double,String,Bool)
  • 変数を宣言するときはvar 変数名:型名でした。
  • 初期値も型名もわからないときにvar 変数名:(型名,型名,型名,型名)というように型名をタプルに入れ全型名を指定しておくことができます。

変数をタプルでまとめて宣言することができる

var (price, tax) = (100,10)
print(price)
print(tax)
  • 変数priceの値を100、taxの値を10とタプルでまとめて宣言しました。
  • print(price)で100が表示されます。
  • print(tax)で10が表示されます。

タプルでネストも可能

var nums = (10,20,30,100)
var strs = ("あか","あお","きいろ")

var mixTup = ("Hello",10,3.14,true,nums,strs)
  • mixTupのタプルにnumsのタプルとstrsのタプルをネストしています。
ラベル名付きタプル ラベル名付きタプル