工作日根据 java.time API 区域设置的正确顺序
weekdays in correct order based on Locale with java.time API
德国等一些国家/地区的一周从周一开始,而美国等一些国家/地区的一周从周日开始。
我在想 dayOfWeek.value 有一个基于 Locale 的版本,但我找不到它。
有没有办法根据 java.time API
的区域设置以正确的顺序获取工作日
DayOfWeek 不支持本地化文本形式,您需要 WeekFields
This enum provides access to the localized textual form of the day-of-week. Some locales also assign different numeric values to the days, declaring Sunday to have the value 1, however this class provides no support for this. See WeekFields for localized week-numbering.
WeekFields germany = WeekFields.of(Locale.GERMANY);
System.out.println(germany.getFirstDayOfWeek()); //MONDAY
WeekFields us = WeekFields.of(Locale.US);
System.out.println(us.getFirstDayOfWeek()); //SUNDAY
您需要 WeekFields
,它有一个采用 Locale
.
的 of
方法
这里有一些代码可以让您按顺序列出星期几:
DayOfWeek firstDay = WeekFields.of(someLocale).getFirstDayOfWeek();
List<DayOfWeek> list = IntStream.range(0, 7)
.mapToObj(x -> firstDay.plus(x))
.collect(Collectors.toList());
德国等一些国家/地区的一周从周一开始,而美国等一些国家/地区的一周从周日开始。 我在想 dayOfWeek.value 有一个基于 Locale 的版本,但我找不到它。 有没有办法根据 java.time API
的区域设置以正确的顺序获取工作日DayOfWeek 不支持本地化文本形式,您需要 WeekFields
This enum provides access to the localized textual form of the day-of-week. Some locales also assign different numeric values to the days, declaring Sunday to have the value 1, however this class provides no support for this. See WeekFields for localized week-numbering.
WeekFields germany = WeekFields.of(Locale.GERMANY);
System.out.println(germany.getFirstDayOfWeek()); //MONDAY
WeekFields us = WeekFields.of(Locale.US);
System.out.println(us.getFirstDayOfWeek()); //SUNDAY
您需要 WeekFields
,它有一个采用 Locale
.
of
方法
这里有一些代码可以让您按顺序列出星期几:
DayOfWeek firstDay = WeekFields.of(someLocale).getFirstDayOfWeek();
List<DayOfWeek> list = IntStream.range(0, 7)
.mapToObj(x -> firstDay.plus(x))
.collect(Collectors.toList());