使用注解机制代替枚举
本文于 1337 天之前发表,文中内容可能已经过时。
使用注解等注解代替Enum
在Android开发过程中,使用Enum所占用的内存比单纯使用int变量定义的内容明显要大,为了提高软件的使用性,建议使用注解的方法。
#使用方法
1.引用依赖包
目前以Android Studio 3.1.2为例子
`implementation 'com.android.support:support-annotations:27.1.1'`
如果是以前的版本则使用
`compiler 'com.android.support:support-annotations:27.1.1'`
2.创建注解类
如果是以Int作为标志,则使用IntDef的注解,以下以季节为例子
@IntDef({SPRING, SUMMER, AUTUMN, WINTER})
@Retention(RetentionPolicy.SOURCE)
public @interface Season {
int SPRING = 0;
int SUMMER = 1;
int AUTUMN = 2;
int WINTER = 3;
}
步骤
- 创建interface
- 在interface中添加字段
- 在interface前面添加@
- 添加IntDef({添加之前添加的字段})
- 在IntDef后添加@Retention(RetentionPolicy.SOURCE)
3.具体引用
@Season int season = Season.SPRING;
switch (season) {
case Season.AUTUMN:
break;
case Season.SPRING:
break;
case Season.SUMMER:
break;
case Season.WINTER:
break;
}
4.备注
如果在使用的变量的前方标注了注解,则可以在switch(season)后通过alt+enter直接列举出所有的case情况。