一、方法名
toString()返回当前对象名,子类可以重写该方法,用于返回对象的属性信息
@Overridepublic String toString() {return "Season3{" +"name='" + name + '\'' +", desc='" + desc + '\'' +'}';}
name() 返回当前对象名(常量名) 子类不能重写
System.out.println(autumn.name());
ordinal() 输出的是枚举对象的词序/编号 从0开始编号
System.out.println(autumn.ordinal());
values() 返回枚举类中的所有常量
Season3 values[] = Season3.values();
valueOf() 将字符串转换成枚举对象,要求字符串必须为已有的常量名,否则报异常
Season3 season3 = Season3.valueOf("AUTUMN");
System.out.println("autumn=" + autumn);
compareTo() 比较两个枚举常量的位置号(编号)
System.out.println(Season3.AUTUMN.compareTo(Season3.SUMMER));
二、代码实现
/* 演示Enum方法的使用 */
public class EnumMethod {public static void main(String[] args) {Season3 autumn = Season3.AUTUMN;// name() 返回当前对象名(常量名) 子类不能重写System.out.println(autumn.name());// ordinal() 输出的是枚举对象的词序/编号 从0开始编号System.out.println(autumn.ordinal());// values() 返回枚举类中的所有常量Season3 values[] = Season3.values();// 增强for循环for(Season3 searon: values){System.out.println(searon);}/*int nums[] = {1,2,3};System.out.println("=====普通for循环=====");for (int i = 0; i < nums.length; i++) {System.out.println(nums[i]);}System.out.println("=====增强for循环=====");for(int i : nums){// 执行流程是依次从nums数组中取出数据赋给iSystem.out.println("i=" + i);}*/// valueOf() 将字符串转换成枚举对象,要求字符串必须为已有的常量名,否则报异常// 执行流程 根据输入的名称到枚举对象中查找 如果找到了就输出 如果没有则报错Season3 season3 = Season3.valueOf("AUTUMN");System.out.println("autumn=" + autumn);// compareTo() 比较两个枚举常量的位置号(编号)// Season3.AUTUMN的编号 - Season3.SUMMER的编号System.out.println(Season3.AUTUMN.compareTo(Season3.SUMMER));}
}
enum Season3{SPRING("春天","温暖"),SUMMER("夏天","炎热"),AUTUMN("秋天","凉爽"),WINTER("冬天","寒冷");private String name;private String desc;private Season3(){// 无参构造器}private Season3(String name, String desc) {this.name = name;this.desc = desc;}public String getName() {return name;}public String getDesc() {return desc;}// toString()返回当前对象名,子类可以重写该方法,用于返回对象的属性信息@Overridepublic String toString() {return "Season3{" +"name='" + name + '\'' +", desc='" + desc + '\'' +'}';}
}