【发布时间】:2019-03-05 16:27:23
【问题描述】:
在official document中,我找到了enumValues()函数。
我使用了enumValues()函数,但找不到区别。
enum class RGB {
RED, GREEN, BLUE
}
RGB.values().joinToString { it.name } // RED, GREEN, BLUE
enumValues<RGB>().joinToString { it.name } // RED, GREEN, BLUE
enumValues() 和Enum.values() 有什么区别?
它是 JVM 以外平台的功能吗?还是有其他用例?
【问题讨论】:
-
在您提到的同一文档中,指定从 Kotlin 1.1 开始,可以使用
enumValues<T>()和enumValueOf<T>()函数以通用方式访问枚举类中的常量。EnumClass.values()仍在使用,具有相同的操作含义,请阅读上面的enumValues()。