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

Java:枚举的使用

目录

一、基础使用

二、枚举实现星期表示


一、基础使用

public enum SeasonEnum {SPRING,SUMMER, AUTUMN, WINTER
}
public static void main(String[] args) {SeasonEnum season = SeasonEnum.SUMMER;System.out.println("Current season: " + season);for (SeasonEnum s : SeasonEnum.values()) {System.out.println("Season: " + s +", Ordinal: " + s.ordinal() +  //enum常量声明顺序,避免使用,顺序易受重构影响", Name: " + s.name());}switch (season) {case SPRING:System.out.println("It's springtime!");break;case SUMMER:System.out.println("It's summertime!");break;case AUTUMN:System.out.println("It's autumn!");break;case WINTER:System.out.println("It's wintertime!");break;default:System.out.println("Unknown season!");}}

输出:

Current season: SUMMER
Season: SPRING, Ordinal: 0, Name: SPRING
Season: SUMMER, Ordinal: 1, Name: SUMMER
Season: AUTUMN, Ordinal: 2, Name: AUTUMN
Season: WINTER, Ordinal: 3, Name: WINTER
It's summertime!

二、枚举实现星期表示

public enum DayOfWeek {MONDAY("星期一", "Monday"),TUESDAY("星期二", "Tuesday"),WEDNESDAY("星期三", "Wednesday"),THURSDAY("星期四", "Thursday"),FRIDAY("星期五", "Friday"),SATURDAY("星期六", "Saturday"),SUNDAY("星期日", "Sunday");private final String chineseName;private final String englishName;// 枚举构造函数DayOfWeek(String chineseName, String englishName) {this.chineseName = chineseName;this.englishName = englishName;}// 获取中文名称public String getChineseName() {return chineseName;}// 获取英文名称public String getEnglishName() {return englishName;}// 判断是否为工作日public boolean isWeekday() {return this != SATURDAY && this != SUNDAY;}// 判断是否为周末public boolean isWeekend() {return this == SATURDAY || this == SUNDAY;}// 获取下一天public DayOfWeek nextDay() {return values()[(this.ordinal() + 1) % values().length];}
}
public class WeekdayEnumExample {public static void main(String[] args) {// 示例用法DayOfWeek today = DayOfWeek.MONDAY;System.out.println("星期枚举示例:");System.out.println("================================");// 遍历所有枚举值for (DayOfWeek day : DayOfWeek.values()) {System.out.printf("%-10s %-10s %-10s %s%n",day,day.getChineseName(),day.getEnglishName(),day.isWeekday() ? "工作日" : "周末");}System.out.println("================================");// 特定日期的操作示例System.out.println("今天是: " + today.getChineseName() + " (" + today.getEnglishName() + ")");System.out.println("是工作日吗? " + today.isWeekday());System.out.println("明天是: " + today.nextDay().getChineseName());// 使用valueOf方法DayOfWeek friday = DayOfWeek.valueOf("FRIDAY");System.out.println("周五是: " + friday.getChineseName());}
}

输出:

星期枚举示例:
================================
MONDAY     星期一        Monday     工作日
TUESDAY    星期二        Tuesday    工作日
WEDNESDAY  星期三        Wednesday  工作日
THURSDAY   星期四        Thursday   工作日
FRIDAY     星期五        Friday     工作日
SATURDAY   星期六        Saturday   周末
SUNDAY     星期日        Sunday     周末
================================
今天是: 星期一 (Monday)
是工作日吗? true
明天是: 星期二
周五是: 星期五

http://www.lryc.cn/news/625462.html

相关文章:

  • arcgis-空间矫正工具(将下发数据A的信息放置原始数据B的原始信息并放置到成果数据C中,主要按下发数据A的范围)
  • Android-ContentProvider的跨应用通信学习总结
  • IPD流程执行检查表
  • Java高级面试实战:Spring Boot微服务与Redis缓存整合案例解析
  • 我的SSM框架自学3
  • 《C++进阶之STL》【二叉搜索树】
  • Vulkan笔记(七)---图像视图
  • Mac(七)右键新建文件的救世主 iRightMouse
  • 前沿技术借鉴研讨-2025.8.19 (信号提取、信号拆分、胎心诊断)
  • C++---为什么迭代器常用auto类型?
  • Flink on Native K8S安装部署
  • Typescript入门-对象讲解
  • C/C++ 常见笔试题与陷阱详解
  • 电脑出现‘无法启动此程序,因为计算机中丢失dll’要怎么办?2025最新的解决方法分析
  • vue3+element-plus 输入框el-input设置背景颜色和字体颜色,样式效果等同于不可编辑的效果
  • 微软行业案例:英格兰足球超级联赛(Premier League)
  • Flask 路由详解:构建灵活的 URL 映射系统
  • Flutter AlwaysScrollableScrollPhysics详解
  • Windows 平板/电脑 上使用 DHCPSRV 搭建 DHCP 服务器
  • 后台管理系统-8-vue3之首页count数据的渲染
  • Flink Stream API - 源码二开详细实现
  • Python爬虫第一课:爬取HTML静态网页小说章节
  • 【教程】在 VMware Windows 虚拟机中使用 WinPE 进行离线密码重置或取证操作
  • CT Micro’s New HV Photo-MOSFET Relay Optocouplers
  • github 上传代码步骤
  • JWT通俗易懂讲解
  • 什么是强化学习
  • 【图像算法 - 18】慧眼辨良莠:基于深度学习与OpenCV的麦田杂草智能识别检测系统(附完整代码)
  • 从 SGD 到梯度累积:Epoch、Batch、Step 的关系全解析
  • 边缘智能体:Go编译在医疗IoT设备端运行轻量AI模型(上)