Android性能的Kotlin枚举类

在Java中,我们被告知要严格避免在Android上使用枚举,因为它占用了两倍的内存。

这是否也适用于Kotlin中的enum class ? 将Kotlin enum编译成Java enum

这样看来是的。

我在Kotlin创建了这个:

 enum class Thingies { Red, Green, Blue } 

并用javap -v反编译,这里是头文件:

 public final class Thingies extends java.lang.Enum<Thingies> minor version: 0 major version: 52 flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER, ACC_ENUM 

底线:他们是相同的,所以你可能必须以同样的方式对待他们。

它们完全一样,Kotlin Enum 一个Java JVM枚举。