Android官方不推荐使用枚举,因为使用枚举占用内存大,相比于静态常量Enum会花费两倍以上的内存。因此就有另一种方式来替代枚举类的使用,那就是@IntDef注解。
首先谈谈对枚举的理解,虽说平时用枚举不是很多,在某些情况下还是会用到枚举的。
1、枚举是某个类的有限集合,它的对象个数不可由程序员增减,它的对象在一个枚举类生成的时候已经确定。
2、枚举可以避免程序调用者使用了系统规定之外的变量,造成未知错误。比如程序需要使用第三方SDK,传入了SDK未能处理的变量,造成SDK异常错误,如果使用了枚举,就可在编码时发现传入错误参数。
添加依赖:
使用示例:
在kotlin中使用@IntDef注解,发现没有什么用,起不到限定作用,仍然可以随便传入值,测试代码如下:
最终结果输出123。