Java如何判断当前日期为周几

要判断当前日期是星期几,可以使用Java中的Calendar类或者Java 8中的LocalDate类。下面分别介绍这两种方法。

使用Calendar类

import java.util.Calendar;

public class WeekdayChecker {
    public static void main(String[] args) {
        // 获取当前日期
        Calendar calendar = Calendar.getInstance();
        int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK);

        // 根据返回的dayOfWeek值判断是星期几
        switch (dayOfWeek) {
            case Calendar.SUNDAY:
                System.out.println("今天是星期日");
                break;
            case Calendar.MONDAY:
                System.out.println("今天是星期一");
                break;
            case Calendar.TUESDAY:
                System.out.println("今天是星期二");
                break;
            case Calendar.WEDNESDAY:
                System.out.println("今天是星期三");
                break;
            case Calendar.THURSDAY:
                System.out.println("今天是星期四");
                break;
            case Calendar.FRIDAY:
                System.out.println("今天是星期五");
                break;
            case Calendar.SATURDAY:
                System.out.println("今天是星期六");
                break;
        }
    }
}

通过Calendar.getInstance()方法获取一个Calendar实例,并使用其get方法获取DAY_OF_WEEK字段的值,该值表示当前日期是星期几。然后使用switch语句根据dayOfWeek的值判断是星期几,并输出相应的信息。

使用LocalDate类

import java.time.DayOfWeek;
import java.time.LocalDate;

public class WeekdayChecker {
    public static void main(String[] args) {
        // 获取当前日期
        LocalDate localDate = LocalDate.now();
        DayOfWeek dayOfWeek = localDate.getDayOfWeek();

        // 输出星期几
        System.out.println("今天是" + dayOfWeek);
    }
}

首先使用LocalDate.now()方法获取当前日期,然后使用getDayOfWeek()方法获取当前日期的星期几。最后将dayOfWeek打印出来即可。

使用Java 8的新日期时间API,代码更加简洁和易读。

以上两种方法都可以用来判断当前日期是星期几,选择其中一种适合你的需求。

状态图

stateDiagram
    [*] --> 星期日
    星期日 --> 星期一
    星期一 --> 星期二
    星期二 --> 星期三
    星期三 --> 星期四
    星期四 --> 星期五
    星期五 --> 星期六
    星期六 --> 星期日

关系图

erDiagram
    DAY_OF_WEEK }|..| Calendar
    DAY_OF_WEEK }|..| LocalDate
    Calendar ..|> Calendar.getInstance()
    LocalDate ..|> LocalDate.now()

上述状态图展示了从星期日到星期六的状态转移,形成一个循环。关系图展示了Calendar类和LocalDate类与DAY_OF_WEEK的关系。DAY_OF_WEEK是一个字段,它是Calendar类和LocalDate类中用于表示星期几的常量。

希望以上内容能够解答你的问题,如有疑问请及时追问。