Java程式:顯示日曆年份中工作日的名稱


一週有5個工作日,分別是星期一、星期二、星期三、星期四和星期五。其餘兩天,即星期六和星期日,構成周末。在本文中,我們將學習如何編寫一個Java程式來顯示日曆年份中工作日的名稱。

使用DateFormatSymbols類

Java標準庫的java.text包包含DateFormatSymbols類,該類提供用於檢索和設定以下日期和時間符號的方法:

  • 月份和日期名稱及縮寫

  • 星期幾名稱及縮寫

  • 紀元名稱

  • AM/PM字串

  • 時區名稱和縮寫

DateFormatSymbols預設情況下使用當前預設區域設定的特定於區域設定的符號。但是,您可以使用不同的區域設定或任何上述欄位的自定義符號陣列建立DateFormatSymbols的例項。我們將使用此類的getWeekdays()方法,該方法返回一個工作日名稱陣列。

示例

下面給出一個顯示日曆年份中工作日名稱的Java程式:

import java.text.DateFormatSymbols;

public class Weekdays {
   public static void main(String[] args) {
      DateFormatSymbols symbols = new DateFormatSymbols();
      String[] weekdays = symbols.getWeekdays();
      for (int i = 2; i <= 6; i++) {
         System.out.println(weekdays[i]);
      }
   }
}

執行程式碼後,將產生以下結果:

Monday
Tuesday
Wednesday
Thursday
Friday

使用Calendar類

在這種方法中,我們首先初始化Calendar類,然後使用for迴圈迭代星期一到星期五的工作日。對於每一天,我們設定Calendar物件的星期幾,並以預設區域設定檢索該天的全名。

Java標準庫的java.util包包含Calendar類,該類提供用於檢索或設定日期或時間的各種欄位的方法,例如年份、月份、日期、小時、分鐘、秒和毫秒。

示例

在這個Java程式中,我們使用Calendar類來顯示工作日的名稱。

import java.util.Calendar;
import java.util.Locale;

public class Weekdays {
   public static void main(String[] args) {
      Calendar calendar = Calendar.getInstance();
      for (int i = Calendar.MONDAY; i <= Calendar.FRIDAY; i++) {
         calendar.set(Calendar.DAY_OF_WEEK, i);
         String name = calendar.getDisplayName(
            Calendar.DAY_OF_WEEK, Calendar.LONG, Locale.getDefault());
            System.out.println(name);
      }
   }
}

執行程式碼後,將產生以下結果:

Monday
Tuesday
Wednesday
Thursday
Friday

使用DayOfWeek列舉

在這種方法中,使用DayOfWeek列舉迭代星期幾,並以預設區域設定列印每一天的全名,但僅限於前五天,即星期一到星期五。在這裡,我們使用getDisplayName()方法和TextStyle.FULL來獲取每一天的全名。

示例

讓我們看看實際實現:

import java.time.DayOfWeek;
import java.time.format.TextStyle;
import java.util.Locale;

public class Weekdays {
   public static void main(String[] args) {
      int c=0;
      for (DayOfWeek day : DayOfWeek.values()) {
         if(c<5)
         {
            String name = day.getDisplayName(TextStyle.FULL, Locale.getDefault());
            System.out.println(name);
            c++;
         }
      }
   }
}

執行程式碼後,將產生以下結果:

Monday
Tuesday
Wednesday
Thursday
Friday

更新於:2024年9月30日

550次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.