枚举的遍历

来源:互联网 发布:java 六张合成全景图 编辑:程序博客网 时间:2024/06/06 01:30

枚举的遍历主要有两个方法,第一种是通过反射,第二种是通过values()方法
下面是一个示例代码:

public class ClassEnum {    public enum Product{        FruitApp("苹果","红色"),        FruitBanana("香蕉","黄色");        private String name;        private String color;        Product(String name, String color) {            this.name = name;            this.color = color;        }        Product() {        }        public String getName() {            return name;        }        public void setName(String name) {            this.name = name;        }        public String getColor() {            return color;        }        public void setColor(String color) {            this.color = color;        }        @Override        public String toString() {            return "Product{" +                    "name='" + name + '\'' +                    ", color='" + color + '\'' +                    '}';        }    }    public static void main(String[] args) {        // 第一种方法:通过values()方法       /*        for(ClassEnum.Product product: ClassEnum.Product.values()){            System.out.println(product.getName()+" "+product.getColor());        }        */       // 第二种方法:通过反射得到       Class clazz = Product.class;        Product[] product = (Product[]) clazz.getEnumConstants();        for (Product o  : product) {            System.out.println(o.getName()+" "+o.getColor());        }    }}

测试的结果:

苹果 红色香蕉 黄色
1 0