首页 > 其他 > 详细

枚举类型

时间:2019-04-07 13:36:33      阅读:120      评论:0      收藏:0      [点我收藏+]

以往设置常量,通常将常量放在接口当中,这样就可以在程序中被使用,这种常量不可以修改,因为修饰符是final,代码如下

public interface ConStants{
    public static final int Constants_A=1;
    public static final int Constants_B=21;
}

定义枚举类型的关键字:enum

   compareTo():调用方法compareTo()方法返回的结果,正值代表方法中的参数在调用该方法的枚举对象位置之前;0代表两个互相比较的枚举成员的位置相同。负值代表方法中参数的位置在调用该方法的枚举变量之后。

  ordinal:获取索引。

 

 

枚举类型中的构造方法:在枚举类型中可以增加构造方法,但是构造方法的修饰符必须是private

源码如下:

import static java.lang.System.out;
public class TestEnum {
    enum Constants{
        Constants_A("我是枚举成员A"),//构造函数 TestEnum.Constants2(String)未定义
        Constants_B("我是枚举成员B"),
        Constants_C("我是枚举成员C"),
        Constants_D(3);
        private String description;
        private int i=4;
        private Constants() {
            
        }
        //定义参数为String型的构造方法
        private Constants(String description) {
            this.description=description;
        }
        private Constants(int i) {
            this.i=this.i+i;
        }
        public String getDescription() {
            return description;
        }
        public int getI() {
            return i;
        }
        
    }
    public static void main(String[] args) {
        for(int i=0;i<Constants.values().length;i++) {
            out.println(Constants.values()[i]+"调用getDescription方法为:"
        +Constants.values()[i].getDescription());
        }
        out.println(Constants.valueOf("Constants_D")+"调用getI()方法为:"
        +Constants.valueOf("Constants_D").getI());
    }
}

除了以上方法,还可以将这个getDescription()方法放置在接口中,使枚举类型实现该接口,然后使每个枚举类型实现带方法的接口,使每个枚举类型成员实现该接口中的方法

枚举类型声明提供了一种用户友好的变量定义方法,枚举了某种数据类型所有可能出现的值,总结以下特点:

  •   类型安全
  •   紧凑有效的数据定义
  •   可以和其他程序完美交互
  •   运行效率高

 

枚举类型

原文:https://www.cnblogs.com/tutuhome/p/10664952.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!