java enum枚举类型

参考 http://blog.csdn.net/junlinbo/article/details/18814009

举例:

public enum Color {   Red,   Green,   Blue;   
    /**定义一个变量表示枚举值的数目。 
    (我有点奇怪为什么sun没有给enum直接提供一个size方法).   */ 
    private static int number = Color.values().length;   
    /** 随机返回一个枚举值 
    @return a random enum value.   */ 
    public static Color getRandomColor(){ 
        long random = System.currentTimeMillis() % number;   
        switch ((int) random){   
        case 0: 
            return Color.Red;   
        case 1: 
            return Color.Green;   
        case 2: 
            return Color.Blue; 
        default :
            return Color.Red;  
        }
    }
}

虽然enum不可以有public的构造函数,但是我们还是可以定义private的构造函数,

public enum Season {
    SPRING(1), SUMMER(2), AUTUMN(3), WINTER(4);
    
    private int code;
    private Season(int code){
        this.code = code;
    }
    
    public int getCode(){
        return code;
    }
}

 

 

枚举类型是个class 可以定义多种方法

 

 

 

posted on 2014-03-27 21:30  wjw334  阅读(125)  评论(0编辑  收藏  举报

导航