当前位置: 首页 > news >正文

JAVA中枚举的方法

一、方法名

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 + '\'' +'}';}
}

相关文章:

  • Java基础 集合(二)List详解
  • 【CSS + ElementUI】更改 el-carousel 指示器样式且隐藏左右箭头
  • Qt应用软件【数据篇】大小端数据转换
  • Linux进程信号处理:深入理解与应用(2​​)
  • 【Tomcat与网络6】 Tomcat是如何扩展Java线程池的?
  • Python flask 模板详解
  • 物流平台架构设计与实践
  • Node.js的安装
  • 理解React中的setState()方法
  • R语言基础学习-02 (此语言用途小众 用于数学 生物领域 基因分析)
  • 【如何快速上手Vue.js框架——详细介绍】
  • 《Lua程序设计》-- 学习9
  • Shell脚本是一种用来自动化执行一系列命令的文本文件
  • 公共用例库计划--个人版(六)典型Bug页面设计与开发
  • cesium-水平测距
  • 《深入 React 技术栈》
  • 「面试题」如何实现一个圣杯布局?
  • classpath对获取配置文件的影响
  • CSS居中完全指南——构建CSS居中决策树
  • HTTP传输编码增加了传输量,只为解决这一个问题 | 实用 HTTP
  • Java,console输出实时的转向GUI textbox
  • js正则,这点儿就够用了
  • MyEclipse 8.0 GA 搭建 Struts2 + Spring2 + Hibernate3 (测试)
  • Mysql优化
  • nginx 配置多 域名 + 多 https
  • node-glob通配符
  • Python代码面试必读 - Data Structures and Algorithms in Python
  • TCP拥塞控制
  • Wamp集成环境 添加PHP的新版本
  • 浮动相关
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 我建了一个叫Hello World的项目
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • 正则表达式小结
  • d²y/dx²; 偏导数问题 请问f1 f2是什么意思
  • ​LeetCode解法汇总2182. 构造限制重复的字符串
  • ​学习一下,什么是预包装食品?​
  • (Mirage系列之二)VMware Horizon Mirage的经典用户用例及真实案例分析
  • (定时器/计数器)中断系统(详解与使用)
  • (二)构建dubbo分布式平台-平台功能导图
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • .NET/C# 使用反射注册事件
  • .net2005怎么读string形的xml,不是xml文件。
  • [20171101]rman to destination.txt
  • [C++] 默认构造函数、参数化构造函数、拷贝构造函数、移动构造函数及其使用案例
  • [C++]运行时,如何确保一个对象是只读的
  • [C和指针].(美)Kenneth.A.Reek(ED2000.COM)pdf
  • [Jquery] 实现鼠标移到某个对象,在旁边显示层。
  • [LeetCode] Binary Tree Preorder Traversal 二叉树的先序遍历
  • [LeetCode] Contains Duplicate
  • [Linux] 进程间通信基础
  • [LWC小知识] 标准lightning-input-field怎么取得变更值(onchange)
  • [one_demo_4]不使用第3个变量交换两个变量的值
  • [POJ2446] Chessboard(二分图最大匹配-匈牙利算法)