在Java中,枚举(enum)是一种特殊的类,用于表示一组固定的常量。每个枚举常量都有一个与之关联的ordinal值,这个值表示该常量在枚举声明中的位置,从0开始递增。然而,Java中的枚举ordinal属性是不可修改的,这是由Java语言的设计决定的。 为什么Java枚举的ordinal属性是不可修改的? 常量性质:枚举常量在设计上是不可变的...
枚举类型的每一个值都将映射到 protected Enum(String name, int ordinal) 构造函数中,在这里,每个值的名称都被转换成一个字符串,并且序数设置表示了此设置被创建的顺序。 上面那段代码声明的enum对象实际上调用了7次Enum(String name, int ordinal) 这个构造函数。(name 是常量,上面是MON,TUE等,ordinal是被创建...
publicclassEnumOrdinalExample{publicstaticvoidmain(String[]args){for(Dayday:Day.values()){System.out.println(day+" has an ordinal value of: "+day.ordinal());}}} 1. 2. 3. 4. 5. 6. 7. 这段代码将输出: SUNDAY has an ordinal value of: 0 MONDAY has an ordinal value of: 1 TUESDAY ...
enum Day { MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY } public class Main { public static void main(String[] args) { Day day = Day.WEDNESDAY; int ordinal = day.ordinal(); System.out.println("Ordinal value of WEDNESDAY: " + ordinal); } } Swift示例: 代码语言:txt ...
publicabstractclassEnum<EextendsEnum<E>>implementsComparable<E>, Serializable { ... } 枚举的方法 在enum中,提供了一些基本方法: values():返回 enum 实例的数组,而且该数组中的元素严格保持在 enum 中声明时的顺序。 name():返回实例名。 ordinal():返回实例声明时的次序,从0开始。
java enum 指定int枚举值 java枚举类型enum用法 文章目录 前言 一、枚举类型定义 二、访问成员 三、遍历 四、在switch()中使用枚举 五、方法 1.内置方法 1.1 ordinal()用于返回成员的索引 1.2 compareTo()用于比较枚举类型中两个成员的索引值 1.3 valueOf()用于返回枚举类型中指定字符串对应的枚举成员,如果不...
ordinal()方法 ordinal()方法返回枚举常量的位置。例如, ordinal(SMALL) //返回 0 compareTo()方法 compareTo()方法根据序数值比较枚举常量。例如, Size.SMALL.compareTo(Size.MEDIUM) //返回 ordinal(SMALL) - ordinal(MEDIUM) toString()方法 toString()方法返回枚举常量的字符串表示形式。例如, ...
本文是Java枚举类型的第三篇文章,对于枚举类型的实现原理和包含的方法特性不了解的小伙伴可以先去参考历史文章中的《Java中的枚举类型(Enum)详解》和《详解Java枚举类型(Enum)中的方法》两篇文章。 接下来,我们将深入了解枚举类的使用。 1 扩展枚举值与自定义构造函数 之前,我们讨论枚举类时,主要是针对最简单的枚举...
**/publicenumGoodFeature { AFeature,//ABFeature, CFeature;privatefinalintmask;privateGoodFeature() {this.mask = (1 <<ordinal()); }publicfinalintgetMask() {returnthis.mask; }publicstaticbooleanisEnabled(intfeatures, GoodFeature feature) {return(features & feature.getMask()) != 0; ...
枚举实例的创建过程:枚举类型符合通用模式 Class Enum<E extends Enum<E>>,而 E 表示枚举类型的名称。枚举类型的每一个值都将映射到 protected Enum(String name, int ordinal) 构造函数中,在这里,每个值的名称都被转换成一个字符串,并且序数设置表示了此设置被创建的顺序。