Android @IntDef的使用 - 代替枚举
来源:互联网 发布:超基因优化液txt下载 编辑:程序博客网 时间:2024/06/13 18:16
Android @IntDef的使用 - 代替枚举
官方文档说明,安卓开发应避免使用Enum(枚举类),因为相比于静态常量Enum会花费两倍以上的内存。[ 参考 ]
那么如果需要使用Enum应该怎么做呢?
public class MainActivity extends Activity { //先定义 常量 public static final int SUNDAY = 0; public static final int MONDAY = 1; public static final int TUESDAY = 2; public static final int WEDNESDAY = 3; public static final int THURSDAY = 4; public static final int FRIDAY = 5; public static final int SATURDAY = 6; //用 @IntDef "包住" 常量; // @Retention 定义策略 // 声明构造器 @IntDef({SUNDAY, MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY}) @Retention(RetentionPolicy.SOURCE) public @interface WeekDays {} @WeekDays int currentDay = SUNDAY; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); setCurrentDay(WEDNESDAY); //声明变量 @WeekDays int today = getCurrentDay(); switch (today){ case SUNDAY: break; case MONDAY: break; case TUESDAY: break; case WEDNESDAY: break; case THURSDAY: break; case FRIDAY: break; case SATURDAY: break; default: break; } } public void setCurrentDay(@WeekDays int currentDay) { this.currentDay = currentDay; } @WeekDays public int getCurrentDay() { return currentDay; }}
build.gradle中
compile ‘com.android.support:support-annotations:22.0.0‘
转载自http://www.bubuko.com/infodetail-1070320.html
0 0
- Android @IntDef的使用 - 代替枚举
- Android:使用@IntDef代替Enum
- 教你使用Android自带注解@IntDef代替Enum (枚举)
- @IntDef的使用(替代枚举)
- android开发Enum (枚举)的更轻量级的替代方案 —— @IntDef的使用
- android开发Enum (枚举)的完美替代 —— @IntDef的使用
- (4.6.18)android开发Enum (枚举)的完美替代 —— @IntDef的使用
- android开发Enum (枚举)的完美替代 —— @IntDef的使用
- Android 开发 之 Enum (枚举) —— @IntDef的使用
- Android 开发 之 Enum (枚举) —— @IntDef的使用
- Android 开发 之 Enum (枚举) —— @IntDef的使用
- 使用注解@IntDef替代枚举
- android中 IntDef注解的使用
- @IntDef的使用
- 使用注解@IntDef替代枚举学习
- Android开发中用于替代Enum的@IntDef的使用
- Android中使用注解来代替枚举类的方式
- Androi--开发 之 Enum (枚举) —— @IntDef的使用
- POJ 1064 青蛙的约会(拓展欧几里德算法)
- hdu 5724 SG函数+状压(多校)
- Json
- 从程序员到项目经理
- 通过一张简单的图,让你彻底地、永久地搞懂JS的==运算
- Android @IntDef的使用 - 代替枚举
- 单例
- UITextField的简单使用
- RxJava 学习总结
- mysql管理
- Intent
- jquery validation
- jQuery点击页面其他任意地方关闭弹框
- Debug时候发现的同名jar包加载问题