从官方开发人员文档中删除了“避免只需要整数的枚举”部分。(请参阅“ 为什么Android不使用更多枚举?”以获得旧版内容)
为什么?Android VM是否进行了更改,使技巧过时了?
2
作为参考,以下是灌木丛示例的反编译字节码:https
—
Josh Lee,
截至2014年3月,以下页面仍包含有关使用枚举的建议:developer.android.com/training/articles/memory.html#Overhead
—
Tahir Akhtar
一年后,正如@TahirAkhtar所说,官方的Android培训仍然说:“您应严格避免在Android上使用枚举。”
—
LarsH 2015年
有趣的是,建议避免枚举的建议是Android领先开发人员在2015年的这篇文章中:medium.com/google-developers/… 另外:“请注意,使用@IntDef批注,Android Studio和Gradle 1.3+支持此批注,会(在启用lint错误时)为您的代码建立时类型提供安全性,同时保留使用int变量的大小和性能优势。”
—
tonylo
自2018年4月起,以下页面不再包含有关使用枚举的建议。developer.android.com/topic/performance/memory#Overhead
—
罗宾·戴维斯