要在 Ja va 8 中获取一个日期的星期几,最直接的方式就是调用 LocalDate.getDayOfWeek()。它返回的是 ja va.time.DayOfWeek 枚举,而不是数字或字符串,类型安全且语义清晰。拿到这个枚举之后,可以进一步转成中文、英文名称,或者获取 ISO-8601 标准下的数值(周一为 1,周日为 7)。支持 switch 语句和直接枚举比较,用起来非常顺手。

Ja va中 LocalDate getDayOfWeek 怎么获取星期几 Enum

直接获取 DayOfWeek 枚举

Ja va 8 的 LocalDate 提供了 getDayOfWeek() 方法,返回标准的 ja va.time.DayOfWeek 枚举实例(如 MONDAYTUESDAY 等)。有几个关键点值得注意:

常用操作:转为中文、数字或英文名

虽然枚举用起来很舒服,但最终展示给用户时往往需要中文或英文名称。枚举自带的方法就能搞定:

注意周起始日差异

DayOfWeek 严格遵循 ISO-8601:周一是一周的第一天(值为 1),周日是第七天(值为 7)。这和部分地区习惯(比如美国以周日为一周开始)并不一致。这里有两个容易踩的坑:

简单判断星期几的写法

利用枚举的可读性和对 switch 的天然支持,判断星期几可以写得非常清晰:

整体来说,这功能不复杂,但容易忽略一个关键点:拿到的就是枚举,用好它自带的方法和语义,比自己造轮子要可靠得多。

本文转载于:https://www.php.cn/faq/2818490.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。