java中的枚举

枚举是列出某些有穷序列的所有成员的程序,又或者是一种特定类型对象的计数。本质就是,一个类里面定义几个静态常量,每个变量都是这个类的梳理。
java枚举就是一个特殊的类,一般一组常量,比如,性别的男性与女性,一个星期的七天等等。

定义

1)被enum关键字修饰的类型就是枚举类型。
2)枚举不添加任何方法,枚举值默认为从0开始的有序数值。
3)枚举是不可以被继承的。
4)枚举类型不可以被实例化

实例

例子:

public enum Sex {
    MAN,WOMAN;   //一个常量之间用逗号隔开,这一行一定要放在第一行,后面有代码一定要加:
}
public class Test{
    public static void main(String[] args) {
        Sex s = Sex.MAN;
        System.out.println(s);
    }
}

结果为:

MAN

上面的枚举类的代码就等同于:

public class Sex {
    public final static Sex MAN = null;
    public final static Sex WOMAN = null;
}

如果想给男女赋值的枚举类可以使用如下方法

public enum Sex {
    MAN("男"),WOMAN("女");   //一个常量之间用逗号隔开,这一行一定要放在第一行,后面有代码一定要加:
    private String sex;
    Sex(String sex){
        this.sex = sex;
    }
    public String toString() {
        return sex;
    }
}
public class Test{
    public static void main(String[] args) {
        Sex s = Sex.MAN;
        System.out.println(s.toString());
    }
}

结果是

这样子就可以给性别赋值啦。

valueOf()方法

Enum提供了一个valueOf方法,这个方法和toString方法是相对应的。调用valueOf(“Blue”)将返回 Color.Blue.因此我们在自己重写toString方法的时候就要注意到这一点,一把来说应该相对应地重写valueOf方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值