我怎样才能创建“静态”方法在科腾的枚举?
Kotlin已经有了一些枚举类的“静态”方法,比如values
和valueOf
例如,我有枚举
public enum class CircleType { FIRST SECOND THIRD }
如何添加静态方法,如random(): CircleType
? 扩展功能似乎不适合这种情况。
和其他类一样,你可以在一个枚举类中定义一个类对象:
enum class CircleType { FIRST, SECOND, THIRD; companion object { fun random(): CircleType = FIRST // http://dilbert.com/strip/2001-10-25 } }
然后你可以把这个函数作为CircleType.random()
来调用。
编辑:请注意枚举常量项之间的逗号和伴随对象之前的结束分号。 两者现在是强制性的。