• 技术文章 >Java >java教程

    Java中enum常见的用法是什么

    醉折花枝作酒筹醉折花枝作酒筹2021-04-28 09:32:10转载432
    本篇文章给大家介绍一下Java中enum常见的用法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

    常量定义

    public enum WeekDay {
        SUN, MON, TUE, WED, THT, FRI, SAT
    }

    swich

    public enum WeekDay {
        SUN, MON, TUE, WED, THT, FRI, SAT
    }
    
    public class SelectDay{
        WeekDay weekday = WeekDay.SUN;
        public void select(){
            switch(weekday){
                case SUN:
                    weekday = WeekDay.SUN;
                    break;
                ...
            }
        }
    }

    向枚举添加新方法

    public enum Color {  
        RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4);  
        // 成员变量  
        private String name;  
        private int index;  
        // 构造方法  
        private Color(String name, int index) {  
            this.name = name;  
            this.index = index;  
        }  
        // 普通方法  
        public static String getName(int index) {  
            for (Color c : Color.values()) {  
                if (c.getIndex() == index) {  
                    return c.name;  
                }  
            }  
            return null;  
        }  
        // get set 方法  
        public String getName() {  
            return name;  
        }  
        public void setName(String name) {  
            this.name = name;  
        }  
        public int getIndex() {  
            return index;  
        }  
        public void setIndex(int index) {  
            this.index = index;  
        }  
    }

    覆盖枚举方法

    public enum Color { 
        RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4); 
        // 成员变量
        private String name; private int index; 
        // 构造方法 
        private Color(String name, int index) { 
            this.name = name; this.index = index; 
        } 
        //覆盖方法 
        @Override 
        public String toString() { 
        return this.index+"_"+this.name; 
        } 
    }

    实现接口

    public interface Behaviour { 
        void print(); 
        String getInfo(); 
    } 
    public enum Color implements Behaviour{ 
        RED("红色", 1), GREEN("绿色", 2), BLANK("白色", 3), YELLO("黄色", 4); 
        // 成员变量 
        private String name; 
        private int index; 
        // 构造方法 
        private Color(String name, int index) { 
            this.name = name; this.index = index; 
        } 
        //接口方法 
        @Override 
        public String getInfo() { 
            return this.name; 
        } 
        //接口方法 
        @Override 
        public void print() { 
            System.out.println(this.index+":"+this.name); 
        } 
    }

    接口组织枚举

    public interface Food { 
        enum Coffee implements Food{ 
            BLACK_COFFEE,DECAF_COFFEE,LATTE,CAPPUCCINO 
        } 
        enum Dessert implements Food{ 
            FRUIT, CAKE, GELATO 
        } 
    }

    枚举集合

    public class Test {
        public static void main(String[] args) {
            EnumSet<WeekDay> week = EnumSet.noneOf(WeekDay.class);
            week.add(WeekDay.MON);
            System.out.println("EnumSet中的元素:" + week);
            week.remove(WeekDay.MON);
            System.out.println("EnumSet中的元素:" + week);
            week.addAll(EnumSet.complementOf(week));
            System.out.println("EnumSet中的元素:" + week);
            week.removeAll(EnumSet.range(WeekDay.FRI, WeekDay.SAT));
            System.out.println("EnumSet中的元素:" + week);
        }

    推荐:《java视频教程

    以上就是Java中enum常见的用法是什么的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:CSDN,如有侵犯,请联系admin@php.cn删除
    专题推荐:Java enum
    上一篇:Java.Utils:如何执行命令行命令 下一篇:Java如何获取系统时间
    大前端线上培训班

    相关文章推荐

    • JSch如何远程执行Shell命令• JAVA中的->是什么意思?• 如何使用Java中的问号与冒号?:表达式• Java中&、|、&&、||的区别是什么• Java.Utils:如何执行命令行命令

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网