- Are EnumKotlin 中的类对于 Android 来说“昂贵”,就像 Java 一样?
- 还可以用吗
@IntDefs
or @StringDefs
在科特林?
当我将 Kotlin Enum 类反编译为 Java 类时,底层仍然使用了 Java Enum,不建议在 Android 开发中使用,这让我想到了这一点。
-
对于 Android 来说,Kotlin 中的 Enum 类是否像 Java 一样“昂贵”?可能。我怀疑 kotlin 是否能够做 java 不能做的优化。
-
在 Kotlin 中仍然可以使用 @IntDefs 或 @StringDefs 吗?- 并不真地。这是一个两极分化的话题,Android 世界中的许多人(包括我)认为使用枚举应该是首选方式。我鼓励您阅读以下链接以获得更好的想法。
杰克·沃顿 (Jake Wharton) 的 Twitter 帖子 https://twitter.com/jakewharton/status/551876948469620737?lang=en
黛安·哈克伯恩 (Diane Hackborn) 的文章和评论 https://plus.google.com/+DianneHackborn/posts/YDykw2hstUu
Somwhat 机智的 reddit 帖子讨论了枚举的优化等 https://www.reddit.com/r/androiddev/comments/7so7ne/you_should_strictly_avoid_using_enums_on_android/
杰克·沃顿的以下回答很有趣。
lint 支持 kotlin typedef 吗? (Kotlin 的 Lint 不会完全
一直支持到 AS 3.1,我们仍在使用 3.0)
你的意思是类型别名吗?如果是这样,是的。
当我退货时,我会收到详尽的 lint 警告吗
when(intDef) { .. } 并意外地忽略了可能的情况之一
类型?
这里总是需要 else。不确定 lint 警告
尽管。
AS 是否有意(alt + Enter 快速添加所有变体
intDef?
Yes.
就像现在,我们讨论的不是发布功能,而是何时
应该使用这个微优化!
自 2012 年以来整个枚举对话的总结!
我还想知道是否有一个密封类,其中每个实现都是一个
对象比枚举有一些性能提升
没有任何。它实际上与枚举完全相同。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)