Java - 枚举

2022-06-26  本文已影响0人  aven_kang

枚举的定义

截屏2022-04-15 下午9.50.00.png
public class Direction {
    
    private final String des;
    
    public static final Direction UP = new Direction("向上");
    public static final Direction DOWN = new Direction("向下");
    public static final Direction LEFT = new Direction("向左");
    public static final Direction RIGHT = new Direction("向右");
    
    private Direction(String des) {
        this.des = des;
    }
    public String getDes() {
        return des;
    }
    
}

上面这个代码是旧版本的枚举的定义方法

public enum DirectionEnum {

    UP("向上"),DOWN("向下"),LEFT("向左"),RIGHT("向右");
    private final String des;

    private DirectionEnum(String des) {
        this.des = des;
    }
    public String getDes() {
        return des;
    }

}

上面的代码更加轻便,更加简洁,舒服

public class DirectionEnumTest {

    public static void main(String[] args) {

        DirectionEnum de = DirectionEnum.DOWN;
        System.out.println("您获取到的方相氏"+ de.getDes());

    }
}
截屏2022-04-15 下午10.54.53.png
    public static void main(String[] args) {

        DirectionEnum de = DirectionEnum.UP;
//        System.out.println("您获取到的方向是"+ de.getDes());
//        test1(de.getDes());

//        for (int i = 0; i < DirectionEnum.values().length; i++) {
//            System.out.println(DirectionEnum.values()[i]);
//        }
        System.out.println(de.toString());  // UP 返回当前枚举类对象的名称
        System.out.println(DirectionEnum.values()[0]); // UP 返回当前枚举类中的所有对象
        System.out.println(de.ordinal()); // 0 获取枚举对象在枚举类中的索引位置
        System.out.println(DirectionEnum.valueOf("UP")); // UP  将参数指定的字符串名转为当前枚举类的对象
        System.out.println(de.compareTo(de)); // 0 比较两个枚举对象在定义时的顺序

    }
上一篇 下一篇

猜你喜欢

热点阅读