由enum修饰的类
enum class LogLevel{
VERBOSE, DEBUG, INFO, WARN, ERROR, ASSERT
}
kotlin中枚举类可以有构造器以及成员方法
enum class LogLevel1(val id: Int){
VERBOSE(0), DEBUG(1), INFO(2), WARN(3), ERROR(4), ASSERT(5);
fun getTag(): String{
return "$id, $name"
}
override fun toString(): String {
return "$name, $ordinal"
}
}
kotlin中enum类提供一些内置成员属性和方法
fun main() {
println(LogLevel.DEBUG.ordinal)//DEBUG在LogLevel中的排序
LogLevel.values().map(::println)//LogLevel中定义的所有值
}
可以提升代码的表现力,也有一定的性能开销