Kotlin 枚举类
1.枚举类的最基本的用法是实现类型安全的枚举
2.每个枚举常量都是一个对象。枚举常量用逗号分隔
3.枚举常量也可以声明自己的匿名类
4.提供了
values()和valueOf()方法来检测指定的名称与枚举类中定义的任何枚举常量是否匹配
//声明
enum class 类名{
...
}
enum class AA {
A,B,C
}
enum class BB(val aa: String) {
CC("NAme_AA")
}
fun main() {
val a = AA.A
val b = BB.CC.aa
// print(a)
print(b)
}
// 匿名类
enum class ProtocolState {
WAITING {
override fun signal() = TALKING
},
TALKING {
override fun signal() = WAITING
};
abstract fun signal(): ProtocolState
}
enum class IntArithmetics : BinaryOperator<Int>, IntBinaryOperator {
PLUS {
override fun apply(t: Int, u: Int): Int = t + u
},
TIMES {
override fun apply(t: Int, u: Int): Int = t * u
};
override fun applyAsInt(t: Int, u: Int) = apply(t, u)
}
扩展
fun AA.show() {
print("AA_Show")
}