十一 20

从5.0开始,j2se支持枚举类型。简单的枚举使用如下:

  public enum Color{RED,BLUE,GREEN;};
    public static void main(String[] args){        
        for(Color c:Color.values()){
             System.out.println(c);
        }
    }
    输出为
    RED
      BLUE
      GREEN

稍微复杂一点的使用,可以增加对枚举类型的定义:
    public enum Color{RED(1),BLUE(5),GREEN(7);
        private int value;
        Color(int value){this.value = value;}
        public int value(){return this.value;}
      };
      public static void main(String[] args){        
        for(Color c:Color.values()){
             System.out.println(c);
             System.out.println(c.value() == 1);
        }
      }

    输出为:
   RED
    True
    BLUE
    false
    GREEN
    false



    其中在枚举的声明当中的这部分内容:
     private int value;
        Color(int value){this.value = value;}
        public int value(){return this.value;}

    就等价与声明了一个Color类:
     public class Color{
              private int value;
              Color(int value){this.value = value;}
              public int value(){return this.value;}
       }

   

还有就是,枚举也能用于switch结构当中,象
    switch(c){
            case RED:…
        case BLUE:…
    }


Tags:

作者:Jock

Leave a Reply

You must be logged in to post a comment.

Switch to our mobile site