您当前的位置: 首页 >  Java

郭梧悠

暂无认证

  • 6浏览

    0关注

    402博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

浅析java枚举类

郭梧悠 发布时间:2011-04-28 22:29:00 ,浏览量:6

下面先看两个典型的枚举类的例子:
    public enum Size{SMALL,MEDIUM,LAEGE,EXTRA_LAEGE};
    public enum Direction{LEFT,RIGHT,UP,DOWN};   
实际上这就是声明就是一个类,它们刚好有四个实例。(注意在比较枚举类型的值时。永远不要调用equals。直接用==即可)。当然如果需要的话,可以
在枚举类里添加一些构造器,方法,和属性,例如下面的棋子类:
/**枚举也可以象一般的类一样添加方法和属性,你可以为它添加静态和非静态的属性或方法,这一切都象你在一般的类中做的那样.*/
public enum Chessman {   BLACK("●"),WHITE("○");//这一句也就是枚举列表必须写在最前面,否则报错。    private String chessman;
   /**    * 私有构造器    * @param chessman    */   private Chessman(String chessman) {    this.chessman = chessman;   }      /**    *     * @return黑棋或者白旗    */   public String getChessman() {    return this.chessman;   }}
注意正如该例程一样,枚举类的构造器的权限都是private,表明此类是不可以通过外部创建的,只能在此类的内部创建, BLACK("●"),WHITE("○");
等同于下列代码 public static final Chessman BlACK = new Chessman("●");
                      public static final Chessman WIGHT = new Chessman("○");
所有格枚举类型都是Enum 的子类,它们继承了这个类的许多方法,其中最有用的就是toString();这个方法能够返回枚举的常量名,例如Size.SMALL.toString()返回的将是字符串“SMALL"
每个枚举类型都有一个静态的value方法,它将返回全部枚举值的数组,知道了有values方法,我们可以轻车熟路地用ForEach循环来遍历了枚举值了。     for   (Size  size:   Size.values())     System.out.println(“find   value:”   +   size);;
关注
打赏
1663674776
查看更多评论
立即登录/注册

微信扫码登录

0.0429s