Java 程序获取星期几作为字符串


一些基于日历的应用程序需要显示星期几,例如安排任务、事件或提醒。为此,Java 提供了各种内置类和方法,包括 LocalDateCalendarSimpleDateFormat

在本文中,我们将学习如何在 Java 程序中使用这些类和方法来查找给定日期的星期几名称。

使用 LocalDate 类

在这种方法中,我们首先使用LocalDate 类查找当前日期,并使用其名为 getDayOfWeek() 的内置方法创建DayOfWeek 枚举,该枚举可以转换为 String 以显示星期几名称。

LocalDate 是 java.time 包中的一个类。它用于显示没有时区的日期。Java 中的 DayOfWeek 是一个枚举,表示一周中的所有 7 天,从星期一到星期日。

示例

在下面的 Java 程序中,我们使用 LocalDate 类和 DayOfWeek 枚举来查找星期几的名称。

import java.time.DayOfWeek;
import java.time.LocalDate;
public class Demo {
   public static void main(String[] args) {
     // getting current date
      LocalDate currentDate = LocalDate.now();
      System.out.println("Current Date = "+currentDate);
	  // getting day of the week
      DayOfWeek day = currentDate.getDayOfWeek();
      int weekVal = day.getValue();
      String weekName = day.name();
      System.out.println("Week Number = " + weekVal);
      System.out.println("Week Name = " + weekName);
   }
}

以上代码的输出如下所示:

Current Date = 2019-04-12
Week Number = 5
Week Name = FRIDAY

使用 Calendar 类

这是查找当前星期几并打印其名称的另一种方法。在这里,我们创建Calendar 类的实例,该类在 java.util 包中可用,以获取当前日期和时间。然后,使用星期几名称初始化一个字符串数组。最后,使用 get() 方法,将Calendar.DAY_OF_WEEK 作为参数值传递以检索星期几。

示例

以下 Java 程序演示了如何使用 Calendar 类获取星期几作为字符串。

import java.util.Calendar;
public class Demo {
   public static void main(String[] args) {
      // creating calendar instance
      Calendar calendar = Calendar.getInstance();
      // defining string array with week days
      String[] days = new String[]{"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
      // getting the today day name
      String weekName = days[calendar.get(Calendar.DAY_OF_WEEK) - 1];
      System.out.println("Day of the week is:: " + weekName);
   }
}

获得的输出如下所示:

Day of the week is:: Monday

使用 SimpleDateFormat 类

在这种方法中,我们遵循以下步骤:

  • 创建一个 Date 对象来表示当前日期和时间。
  • 现在,使用模式EEEE创建一个SimpleDateFormat 对象,该模式表示星期几的全称。
  • 然后,使用 SimpleDateFormat 类的format() 方法获取当前星期几。

示例

在这个 Java 程序中,我们使用 SimpleDateFormat 类查找星期几。

import java.text.SimpleDateFormat;
import java.util.Date;

public class Demo {
   public static void main(String[] args) {
      // fetching today's date
      Date todayDate = new Date();
      // Printing today date
      System.out.println("Current Date: " + todayDate);
      SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEEE");
      // getting day of the week
      String weekName = simpleDateFormat.format(todayDate);
      System.out.println("Day of the week is:: " + weekName);
   }
}

以上代码的输出如下:

Current Date: Mon Aug 05 11:40:40 GMT 2024
Day of the week is:: Monday

更新于: 2024年8月16日

1K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告