枚举简单介绍

1:枚举其实就是常量的集合,就是几个字符串组成的。他继承了Enum这个类  所以他不可在继承其它类,

      但是它可以实现其他接口。

2:valueOf()  将普通字符串转化为枚举类型  这个字符串必须是枚举类型成员对应的字符串

      values()  将枚举类型成员以一个数组的形式返回

      ordinal()  返回枚举对象位置索引值

      compareTo()  枚举成员位置相同返回0 否则返回负整数

 

enum Constants implements intValue{
    SMALL {
        @Override
        public int getInteValue() {
            return ordinal()+100;
        }
    },
    MIDDLE {
        @Override
        public int getInteValue() {
            return ordinal()+100;
        }
    },
    LARGE {
        @Override
        public int getInteValue() {
            return ordinal()+100;
        }
    };
 
private int getIntValue(){
    return ordinal()+100;
}

}

Constants[] constantses = Constants.values();
for (int i = 0; i < constantses.length; i++) {
    Log.d(TAG, "onClick: constantses=="+constantses[i]);
    Log.d(TAG, "onClick:11== "+Constants.valueOf(constantses[i]+""));
    Log.d(TAG, "onClick: 22== "+constantses[i].ordinal());
 
Log.d(TAG, "onClick: getIntValue=="+constantses[i].getIntValue());

}04-11 14:55:15.423 31767-31767/com.aidl.testtry D/SecondActivity: onClick: constantses==SMALL
04-11 14:55:15.423 31767-31767/com.aidl.testtry D/SecondActivity: onClick:11== SMALL
04-11 14:55:15.423 31767-31767/com.aidl.testtry D/SecondActivity: onClick: 22== 0
04-11 14:55:15.423 31767-31767/com.aidl.testtry D/SecondActivity: onClick: getIntValue==100
04-11 14:55:15.423 31767-31767/com.aidl.testtry D/SecondActivity: onClick: constantses==MIDDLE
04-11 14:55:15.423 31767-31767/com.aidl.testtry D/SecondActivity: onClick:11== MIDDLE
04-11 14:55:15.425 31767-31767/com.aidl.testtry D/SecondActivity: onClick: 22== 1
04-11 14:55:15.425 31767-31767/com.aidl.testtry D/SecondActivity: onClick: getIntValue==101
04-11 14:55:15.425 31767-31767/com.aidl.testtry D/SecondActivity: onClick: constantses==LARGE
04-11 14:55:15.425 31767-31767/com.aidl.testtry D/SecondActivity: onClick:11== LARGE
04-11 14:55:15.425 31767-31767/com.aidl.testtry D/SecondActivity: onClick: 22== 2
04-11 14:55:15.425 31767-31767/com.aidl.testtry D/SecondActivity: onClick: getIntValue==102

 

 

 

 

简单介绍结果api:

构造函数以及上面的实现接口:

枚举的优点:

类型安全

运行效率高

 

简单自我总结:

枚举相当于一个class   他里面的对象都是final static 类型的,

1:凡是类里面的抽象方法  对象在实例化的时候都需要实现。

2:class里面的构造函数  对象在创建的时候也需要  特殊之处不用加new

 

枚举原理讲得很好的一篇文章:

https://www.cnblogs.com/hyl8218/p/5088287.html

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值