🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Java 8 – `DayOfWeek` > 原文: [https://howtodoinjava.com/java/date-time/find-dayofweek/](https://howtodoinjava.com/java/date-time/find-dayofweek/) Java 示例,用于确定星期几是给定日期。 工作日为星期日,星期一至星期六。 ## 1\. `DayOfWeek`枚举 [`DayOfWeek`](https://docs.oracle.com/javase/8/docs/api/java/time/DayOfWeek.html)是代表一周中七天的枚举 - 星期一,星期二,星期三,星期四,星期五,星期六和星期日。 由于它是一个枚举,因此具有与每天相关的序数值。 从 1(星期一)到 7(星期日)。 某些语言环境还为日期分配了不同的数值,从而声明星期日为 1。但是,此类不支持此特性。 要获得数字表示,建议使用`getValue()`。 这是一个[**不可变的**](https://howtodoinjava.com/java/basics/how-to-make-a-java-class-immutable/)和[**线程安全**](https://howtodoinjava.com/java/multi-threading/what-is-thread-safety/)枚举。 ## 2\. 给定`LocalDate`的`DayOfWeek` `LocalDate`类具有方法`getDayOfWeek()`,该方法返回表示星期几的枚举值。 ```java LocalDate today = LocalDate.now(); System.out.println( today.getDayOfWeek() ); // SUNDAY System.out.println( today.getDayOfWeek().getValue() ); // 7 ``` 类似于`LocalDate`,其他时间类别也提供此方法。 * [`LocalDate.getDayOfWeek()`](https://howtodoinjava.com/java/date-time/java-time-localdate-class/) * [`LocalDateTime.getDayOfWeek()`](https://howtodoinjava.com/java/date-time/java-localdatetime-class/) * [`ZonedDateTime.getDayOfWeek()`](https://howtodoinjava.com/java/date-time/zoneddatetime-class/) ## 3\. 特定于语言环境的值 使用`getDisplayName(TextStyle, Locale)`以特定于语言环境的方式获取星期几的值。 ```java public static void main(String[] args) { String textValue = getDayString(today, Locale.getDefault()); System.out.println(textValue); // Sunday textValue = getDayString(today, Locale.GERMAN); System.out.println(textValue); // Sonntag } public static String getDayString(LocalDate date, Locale locale) { DayOfWeek day = date.getDayOfWeek(); return day.getDisplayName(TextStyle.FULL, locale); } ``` 将有关 Java 8 中星期几的**的问题交给我**。 学习愉快! [下载源码](https://github.com/lokeshgupta1981/Core-Java/tree/master/src/com/howtodoinjava/core/datetime)