fork download
  1. import java.time.DayOfWeek;
  2. import java.time.LocalDate;
  3. import java.time.temporal.TemporalAdjusters;
  4. import java.time.temporal.WeekFields;
  5. import java.util.List;
  6. import java.util.Locale;
  7. import java.util.stream.Collectors;
  8. import java.util.stream.IntStream;
  9.  
  10. public class Main {
  11. public static void main(String[] args) {
  12. // Let's test it
  13. System.out.println(getWeekDays(Locale.UK));
  14. System.out.println(getWeekDays(Locale.US));
  15. }
  16.  
  17. static List<DayOfWeek> getWeekDays(Locale locale) {
  18. LocalDate localDate = LocalDate.now();
  19.  
  20. // First day of week
  21. DayOfWeek firstDayOfWeek = WeekFields.of(locale).getFirstDayOfWeek();
  22.  
  23. LocalDate date = localDate.with(TemporalAdjusters.dayOfWeekInMonth(0, firstDayOfWeek));
  24. return IntStream.rangeClosed(0, 6)
  25. .mapToObj(i -> date.plusDays(i).getDayOfWeek())
  26. .collect(Collectors.toList());
  27. }
  28. }
Success #stdin #stdout 0.18s 54932KB
stdin
Standard input is empty
stdout
[MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY]
[SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY]