枚举类
Kotlin中的枚举类和Java中的枚举类型非常相似,具有类的特性。一般将可枚举的同类型的一组值作为枚举类定义。
基本用法
Kotlin中,枚举类型以类的形式存在,因此叫做枚举类,如下是实例:
enum class Color {
RED, GREEN, BLUE
}
Kotlin中一切都是对象,因此,每一个枚举类型也是对象,多个枚举类型之间用 , 隔开。
先看下如何使用:
var color: Color = Color.BLUE
var color2 = Color.GREEN
// 比较两个枚举类型变量
var bool: Boolean = color == color2
需要注意,引用枚举类中的值,需要加上枚举类名。默认状态下,直接输出枚举类的元素值,会输出元素值的名称。
为枚举值指定数值
其实枚举类每一个值就是当前枚举类的对象,因此,如果要为每一个枚举类的值指定一个数字,直接通过构造器传入即可。
enum class Direction private constructor(var value: Int) {
NORTH(1), WEST(2), EAST(3), SOUTH(4)
}
其他功能
首先说明一点,为每一个枚举值指定一个值,这个数并不一定从0开始,也不一定是按顺序的,因此枚举值在枚举类中的位置和枚举值对应的数值可能并不相同。
无论是Java还是Kotlin都提供了相应的API