列舉

就像在 Java 中一樣,Kotlin 中的列舉類具有合成方法,允許列出定義的列舉常量並通過其名稱獲得列舉常量。這些方法的簽名如下(假設列舉類的名稱是 EnumClass):

EnumClass.valueOf(value: String): EnumClass
EnumClass.values(): Array<EnumClass>

如果指定的名稱與類中定義的任何列舉常量不匹配,valueOf() 方法將丟擲 IllegalArgumentException

每個列舉常量都具有在列舉類宣告中獲取其名稱和位置的屬性:

val name: String
val ordinal: Int

列舉常量還實現了 Comparable 介面,自然順序是它們在列舉類中定義的順序。