kotlinでenum classを使う

  • 4
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

数字から文字列を得たいとき、
(例えば5を指定して, Oneを文字列として得たいとき)

kotlin

enum class Financing(val rawValue :Int)  {
    One(5),
    Revolving(6),
    Two(7)
}
// 使う
Financing.values().filter { 5 == it.rawValue }.first() // => One (Financing型)
Financing.values().filter { 5 == it.rawValue }.first().toString() // => One(String型)

swiftコードをkotlinに変換しているとき、

kotlin

class Compass {
    enum class Direction(val rawValue: Int)  {
        NORTH(1),
        SOUTH(2),
        WEST(3),
        EAST(4)
    }
}

// 使う
Compass.Direction.NORTH.rawValue // => 1
swift
class Compass {
    enum Direction: Int  {
        NORTH = 1
        SOUTH
        WEST
        EAST
    }
}

// 使う
Compass.Direction.NORTH.rawValue // => 1