java获取当天是周几

╰半夏微凉° 2022-11-15 01:26 311阅读 0赞

java获取当天是周几

方式说明

  • 用Calendar#DAY_OF_WEEK 来获取
  • 用SimpleDateFormat 的 u 周标识,格式化日期来获取
  • 用LocalDate.getDayOfWeek() 来获取

代码实现

  1. package com.example.demo.util.date;
  2. import java.text.ParseException;
  3. import java.text.SimpleDateFormat;
  4. import java.time.DayOfWeek;
  5. import java.time.LocalDate;
  6. import java.time.ZoneId;
  7. import java.time.format.DateTimeFormatter;
  8. import java.time.temporal.ChronoField;
  9. import java.util.Calendar;
  10. import java.util.Date;
  11. import java.util.TimeZone;
  12. /** * 获得当前周几 */
  13. public class DateUtils {
  14. public static void main(String[] args) throws ParseException {
  15. getWeekFromStrDateByCalendar("2021-03-28");
  16. getWeekFormStrDateByFormat("2021-03-28");
  17. getWeekFromStrDateByLocalDate("2021-03-28");
  18. }
  19. static SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
  20. static DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
  21. /** * @see java.util.Calendar#DAY_OF_WEEK * @see java.util.Calendar#SUNDAY * Calendar 对象中 周日开始的 标识 1, 周六 标识 7 * 将对象转为 Calendar 对象,在用该对象的 get 方法,带入指定字段获取 对应的 值 (DAY_OF_WEEK) * @param str * @throws ParseException */
  22. public static void getWeekFromStrDateByCalendar(String str) throws ParseException {
  23. Date parse = simpleDateFormat.parse(str);
  24. Calendar instance = Calendar.getInstance(TimeZone.getTimeZone(ZoneId.of("Asia/Shanghai")));
  25. instance.setTime(parse);
  26. int i = instance.get(Calendar.DAY_OF_WEEK);
  27. System.out.println(i);
  28. }
  29. /** * 根据 SimpleDateFormat 对象的 说明,提示,发送 周几 对应的格式符 为 'u' * @param str * @throws ParseException */
  30. public static void getWeekFormStrDateByFormat(String str) throws ParseException {
  31. Date parse = simpleDateFormat.parse(str);
  32. // u 指定周几
  33. SimpleDateFormat format = new SimpleDateFormat("u");
  34. String format1 = format.format(parse);
  35. System.out.println(format1);
  36. }
  37. /** * @param str * @throws ParseException */
  38. public static void getWeekFromStrDateByLocalDate(String str) throws ParseException {
  39. LocalDate parse = LocalDate.parse(str, formatter);
  40. DayOfWeek dayOfWeek = parse.getDayOfWeek();
  41. System.out.println(dayOfWeek.toString());
  42. System.out.println(dayOfWeek.get(ChronoField.DAY_OF_WEEK));
  43. }
  44. }

发表评论

表情:
评论列表 (有 0 条评论,311人围观)

还没有评论,来说两句吧...

相关阅读