首页后端开发其他后端知识Java中enum的用法是什么?一文带你了解

Java中enum的用法是什么?一文带你了解

时间2024-03-28 22:50:03发布访客分类其他后端知识浏览295
导读:这篇文章我们来了解Java中enum的用法,enum的用法还是比较多的,下文介绍了很多enum的使用且有实录供大家参考,有需要的朋友可以参考了解看看,接下来就跟随小编来一起学习一下吧!常量定义public enum WeekDay {...

这篇文章我们来了解Java中enum的用法,enum的用法还是比较多的,下文介绍了很多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) {
    
        EnumSetWeekDay>
     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中enum的用法的介绍了,上述示例具有一定的参考价值,有需要的朋友可以了解看看,希望对大家学习Java语言有帮助,想要了解更多可以继续浏览网络其他相关的文章。

文本转载自PHP中文网

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Java中enum的用法是什么?一文带你了解
本文地址: https://pptw.com/jishu/655250.html
Java如何实现冒泡排序?一文了解思路及实现代码 Java中获取系统时间的方法有哪些,你知道多少?

游客 回复需填写必要信息