Kotlin枚举

时间:2025-02-08 08:18:11

相比于字符串常量,使用枚举能够实现类型安全。

Kotlin使用 enum class 关键字来声明枚举 。

enum class Direction{
    NORTH, SOUTH, WEST, EAST
}

fun testDir(): Unit {
    val dir = 
    println()   // 输出:NORTH
    println()   // 输出:0
    println(dir is Direction)   // 输出:true
    println(dir)   // 输出:NORTH
}

枚举类有两个内置属性:

    public final val name: String
    public final val ordinal: Int

分别表示枚举对象的值和下标位置。

 

每一个枚举都是枚举类的实例,它们可以被初始化。

enum class DirectionPro(val description: String){
    NORTH("北方"), SOUTH("南方"),
    WEST("西方"), EAST("东方")
}

fun testDirPro(): Unit {
    val dir = 
    println(dir)   // 输出:SOUTH
    println()   // 输出:SOUTH
    println()   // 输出:1
    println()   // 输出:南方
}