食品网站建设网站定制开发,淄博做网站哪家好,电商网站开发文档,广州信息流推广公司文章目录基本介绍快速使用字段、方法、构造器枚举类方法toString方法valueOf方法values方法ordinal方法基本介绍
在java中有一种特殊的类型就是枚举类#xff0c;对于一个有限的有固定值的集合#xff0c;我们就可以考虑使用枚举类来进行表示#xff0c;例如服装的大小为 小…
文章目录基本介绍快速使用字段、方法、构造器枚举类方法toString方法valueOf方法values方法ordinal方法基本介绍
在java中有一种特殊的类型就是枚举类对于一个有限的有固定值的集合我们就可以考虑使用枚举类来进行表示例如服装的大小为 小中大超大。一个颜色集合为红色蓝色黄色绿色
快速使用
枚举类使用enum进行标识下面就是一个例子
public enum Color {BLUE, RED, GREEN, YELLOW
}上面的代码我就定义了一个枚举类Color里面有4个值就代表4个对象(理解为4个Color实例对象)我们不能够通过new来进行构造对象我们访问就是通过对象.属性来进行访问 public static void main(String[] args) {Color blue Color.BLUE;Color red Color.RED;Color green Color.GREEN;Color yellow Color.YELLOW;}对于枚举类的比较我们通过就可以了不需要使用equals Color blue1 Color.BLUE;Color blue2 Color.BLUE;System.out.println(blue1 blue2); // 输出true字段、方法、构造器
我们可以为枚举类添加构造器方法和字段现在我们就来对上面的代码进行扩展
public enum Color {BLUE(蓝色), RED(红色), GREEN(绿色), YELLOW(黄色);private String description;Color(String description) {this.description description;}public String getDescription() {return description;}
}我们在枚举类里面添加了一个description字段用于颜色的中文表述提供了一个构造器我们在定义BLUEREDGREENYELLOW的时候就可以传入一个description。这样做有什么好处呢 下面我就通过IDEA创建该Color对象查看IDEA的提示 可以发现我们再使用枚举类的时候就可以很清楚的知道这个枚举类是用来表示什么的。 Color color Color.BLUE;System.out.println(color.getDescription()); // 输出蓝色我们还可以使用枚举类里面的方法。
枚举类方法
在讲解方法之前需要说明的是所有的枚举类都继承于Enum类就好像所有类都继承Object类一样下面介绍的方法都是基于Enum类的
toString方法
这个方法会返回枚举常量名 Color green Color.GREEN;Color yellow Color.YELLOW;System.out.println(green.toString()); // 输出GREENSystem.out.println(yellow.toString());// 输出YELLOWvalueOf方法
这个方法用于构建枚举类传入枚举类常量名即可 Color color Color.valueOf(RED);System.out.println(color.getDescription()); // 输出红色// 如果不存在传入的枚举常量那么会报错Color color1 Color.valueOf(xxx);输出如下 values方法
使用枚举类名进行调用会返回所有枚举常量的数组 Color[] colors Color.values();for (Color c : colors) {System.out.println(c);}ordinal方法
这个方法会返回枚举常量在enum中声明的位置从0开始 Color red Color.RED;int ordinal red.ordinal();System.out.println(ordinal);在Color中RED是第二个定义的所以ordinal会返回1