見出し画像

Swiftでいこう -- enumを使ってみよう。2

もう一つの使い方をみていきましょう。

enum Barcode{
   case upc(Int,Int,Int,Int)
   case qrCode(String)
}

upc(Int,Int,Int,Int)とqrCode(String)ですが、( )で型を指定してタプルを宣言しています。

ここで"タプル"という言葉が出てきました。何でしょう。

型が違ういろいろな値をひとまとめにする。配列のようなでも配列でなくて、値をまとめる、型をしていしてまとめることもできるもの。

ちょっと話がずれましたが、

var pBar = Barcode.upc(8, 20, 111, 3)

こんな感じで値を複数入れて行きます。ここでは"upc(Int,Int,Int,Int)"と"Int" が指定されているので、(8, 20, 111, 3)と整数が入っています。

pBar = .qrCode("abcd")

の場合は"qrCode(String)"なので("abcd")と文字が入っています。

使ってみましょう。

switch pBar {
case let .upc(num,manu,pro,check):
   print("UPC : \(num), \(manu), \(pro), \(check)")
case let .qrCode(pBar):
   print("\(pBar)")
} //"abcd" と表示。

Associated Values(共用型、付属型)などと呼ばれ、いくつかの値をタプルでまとめて使えます。

この記事が気に入ったらサポートをしてみませんか?