Swiftのenumはけっこういろんなことができて、その一つにenum内にメソッドを定義することができる。
Swiftでenum内にメソッドを追加する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
enum Fruits: String { case Apple = "りんご" case Banana = "ばなな" case Orange = "おれんじ" func getPrice() -> Int { switch self { case .Apple: return 100 case .Banana: return 50 case .Orange: return 120 } } } print(Fruits.Apple.getPrice()) // 100 print(Fruits.Orange.getPrice()) // 120 |
こんな感じでenum内に宣言したメソッドを簡単に呼び出すことができる。
他にもいろいろあるが、Swiftのenum最強かよ?って感じがけっこうある。