zoukankan      html  css  js  c++  java
  • java枚举enum总结大全

    1.注意点

    (1)枚举中的构造方法必须是private的。

    (2)枚举中可以定义抽象方法和一般方法,但枚举对象必须实现所有抽象方法。

    (3)枚举对象必须放在第一行。

     1 package classTwo01;
     2 
     3 public enum Colors {
     4 
     5     RED{
     6         @Override
     7         public void setName(String name) {
     8             this.name=name;
     9         }
    10         
    11     },BLUE{
    12         @Override
    13         public void setName(String name) {
    14             this.name=name;
    15         }
    16         
    17     };
    18     
    19     public String name; 
    20     
    21     private Colors(){
    22         
    23     }
    24 //    private Colors(String name){
    25 //        this.name=name;
    26 //    }
    27 //    
    28     public String getName() {
    29         return name;
    30     }
    31     
    32     public abstract void setName(String name);
    33 }
     1 package classTwo01;
     2 
     3 public class Test {
     4 
     5     public static void main(String[] args) {
     6         Colors.BLUE.setName("绿色");
     7         String color=Colors.BLUE.getName();
     8         System.out.println(color);
     9     }
    10 }

    (3)枚举中values()方法是获取所有的枚举对象,使为一个数组,然后通过forEach循环输出。

     1 package classTwo01;
     2 
     3 public enum Colors {
     4 
     5     RED(1,"红色"),BLUE(2,"蓝色");
     6     
     7     private int id;
     8     private String name;
     9     
    10     Colors(int id,String name){
    11         this.id=id;
    12         this.name=name;
    13     }
    14     
    15     public int getId() {
    16         return id;
    17     }
    18     public String getName() {
    19         return name;
    20     }
    21     
    22 }
    package classTwo01;
    
    import java.util.Iterator;
    
    public class Test {
    
        public static void main(String[] args) {
            Colors[] colors=Colors.values();
            for (Colors color : colors) {
                System.out.println(color.getId()+":"+color.getName());
            }
        }
    }

     我们知道switch()括号中可以使byte short int char String enum  那么枚举该怎么用呢,看下面实例

     1 public static void switchTest(Colors color) {
     2         switch (color){
     3             case RED:{
     4                 System.out.println("红色");
     5                 break;
     6             }
     7             case BLUE:{
     8                 System.out.println("蓝色");
     9                 break;
    10             }
    11             default:{
    12                 break;
    13             }
    14         }
    15     }

     枚举定义的模板: 1:枚举变量  (必须放在第一行的位置)(可多个)

             2:成员变量(可多个)

               3:静态或非静态方法(可多个)

             4:构造方法(可多个)

             5:普通方法(可多个)

             6:抽象方法(可多个)

  • 相关阅读:
    使用 VBRichClient 库
    提取文件夹目录的办法
    编程语言转换
    解决linux服务器上matplotlib中文显示乱码问题
    动态规划 53:Maximum Subarray,152:Maximum Subarray,266. Palindrome Permutation 回文全排列
    动态规划:494,576
    ResourceExhaustedError 解决方案
    周赛138场
    leetcode 115
    leetcode 372
  • 原文地址:https://www.cnblogs.com/lyxcode/p/9366525.html
Copyright © 2011-2022 走看看