通过枚举定义每个枚举类型的值

枚举类型主要提供一些常数

public enum Action
    {
        TURN_LEFT,
        TURN_RIGHT,
        SHOOT
    }

public class EnumDemo
    {
        public static void main(String[] args)
        {
            doAction(Action.TURN_RIGHT);
        }

        public static void doAction(Action action)
        {
            switch(action)
            {
                case TURN_LEFT:
                    System.out.println("向左转");
                    break;
                case TURN_RIGHT:
                    System.out.println("向右转");
                    break;
                case SHOOT:
                    System.out.println("射击");
                    break;
            }
        }
    }

通过枚举构造函数和覆盖toString方法来实现定义每个枚举类型的值

package com.enumDemo;

/**
 * 通过枚举构造函数和覆盖toString方法来实现定义每个枚举类型的值
 *
 * @author Leizhi 2016/5/21
 * @see
 * @since 1.0
 */
public enum Light
{
    // 利用构造函数传参
    RED(1), GREEN(3), YELLOW(2);

    private int code;

    // 构造函数,枚举类型只能为私有
    Light(int code)
    {
        this.code = code;
    }

    @Override
    public String toString()
    {
        return String.valueOf(this.code);
    }

    public static void main(String[] args)
    {
        /**
         * 通过枚举静态方法values遍历枚举
         */
        System.out.println("---------遍历操作-------------");
        for (Light light : Light.values())
        {
            System.out.println("当前灯:" + light);
            System.out.println("当前灯name:" + light.name());
        }

        /**
         * switch操作
         * JDK1.6之前的switch语句只支持int,char,enum类型,使用枚举,能让我们的代码可读性更强。
         */
        System.out.println("---------switch操作-------------");
        Light color = Light.RED;
        switch (color)
        {
            case RED:
                System.out.println("红灯停");
                break;
            case YELLOW:
                System.out.println("黄灯警惕");
                break;
            case GREEN:
                System.out.println("路灯行");
                break;
        }
    }

}

 

转载于:https://my.oschina.net/u/2494581/blog/678888

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值