序言
问题
enum在Android应不应该使用?
解决方案
关于enum,Android Developers中这样一句话:
enums often require more than twice as much memory as static constants. You should strictly avoid using enums on Android
就是说enum比静态常量两倍多的内存占用,应该尽量减少使用。当然了,这里说的是减少并不是禁止,要知道,enum的产生,注定其必定有适合的应用场景,而且它带来的代码简洁性和可读性,都是不可小觑的。
所以,如果在不使用enum的情况下是有替代方案的:
- 使用静态常量的形式替代
- 使用Typedef Annotations替代
第一种没什么说的,下面就重点说一说第二种,就是通过注解的形式来代替,注解是由 support 包提供的功能,如果使用,需要添加 support 包到module。