本文內容基於 Oracle Java 官方文檔,經過個人實踐加以整理積累,僅供參考。
1 java.time.Month 是枚舉類型,由 12 個常量組成,代表 1 月至 12 月
/* =================== 範例程式碼 =================== */package test;import java.time.Month;import org.junit.Test;public class DateTimeTest { @Test public void test() { System.out.println("Month.JANUARY : " + Month.JANUARY); System.out.println("Month.FEBRUARY : " + Month.FEBRUARY); System.out.println("Month.MARCH : " + Month.MARCH); System.out.println("Month.APRIL : " + Month.APRIL); System.out.println("Month.MAY : " + Month.MAY); System.out.println("Month.JUNE : " + Month.JUNE); System.out.println("Month.JULY : " + Month.JULY); System.out.println("Month.AUGUST : " + Month.AUGUST); System.out.println("Month.SEPTEMBER : " + Month.SEPTEMBER); System.out.println("Month.OCTOBER : " + Month.OCTOBER); System.out.println("Month.NOVEMBER : " + Month.NOVEMBER); System.out.println("Month.DECEMBER : " + Month.DECEMBER); }}/* =================== 測試結果 =================== */Month.JANUARY : JANUARYMonth.FEBRUARY : FEBRUARYMonth.MARCH : MARCHMonth.APRIL : APRILMonth.MAY : MAYMonth.JUNE : JUNEMonth.JULY : JULYMonth.AUGUST : AUGUSTMonth.SEPTEMBER : SEPTEMBERMonth.OCTOBER : OCTOBERMonth.NOVEMBER : NOVEMBERMonth.DECEMBER : DECEMBER
2 通過 maxLength() 方法擷取當月最大天數
/* =================== 範例程式碼 =================== */package test;import java.time.Month;import org.junit.Test;public class DateTimeTest { @Test public void test() { System.out.println(" 1月最大天數 : " + Month.JANUARY.maxLength()); System.out.println(" 2月最大天數 : " + Month.FEBRUARY.maxLength()); System.out.println(" 3月最大天數 : " + Month.MARCH.maxLength()); System.out.println(" 4月最大天數 : " + Month.APRIL.maxLength()); System.out.println(" 5月最大天數 : " + Month.MAY.maxLength()); System.out.println(" 6月最大天數 : " + Month.JUNE.maxLength()); System.out.println(" 7月最大天數 : " + Month.JULY.maxLength()); System.out.println(" 8月最大天數 : " + Month.AUGUST.maxLength()); System.out.println(" 9月最大天數 : " + Month.SEPTEMBER.maxLength()); System.out.println("10月最大天數 : " + Month.OCTOBER.maxLength()); System.out.println("11月最大天數 : " + Month.NOVEMBER.maxLength()); System.out.println("12月最大天數 : " + Month.DECEMBER.maxLength()); }}/* =================== 測試結果 =================== */ 1月最大天數 : 31 2月最大天數 : 29 3月最大天數 : 31 4月最大天數 : 30 5月最大天數 : 31 6月最大天數 : 30 7月最大天數 : 31 8月最大天數 : 31 9月最大天數 : 3010月最大天數 : 3111月最大天數 : 3012月最大天數 : 31
3 使用 getDisplayName(TextStyle, Locale) 方法定製字串內容
/* =================== 範例程式碼 =================== */package test;import java.time.Month;import java.time.format.TextStyle;import java.util.Locale;import org.junit.Test;public class DateTimeTest { @Test public void test() { System.out.println( Month.JANUARY.getDisplayName(TextStyle.FULL, Locale.CHINESE)); System.out.println( Month.JANUARY.getDisplayName(TextStyle.SHORT, Locale.CHINESE)); System.out.println( Month.JANUARY.getDisplayName(TextStyle.NARROW, Locale.CHINESE)); System.out.println(); System.out.println( Month.JANUARY.getDisplayName(TextStyle.FULL, Locale.ENGLISH)); System.out.println( Month.JANUARY.getDisplayName(TextStyle.SHORT, Locale.ENGLISH)); System.out.println( Month.JANUARY.getDisplayName(TextStyle.NARROW, Locale.ENGLISH)); System.out.println(); System.out.println( Month.JANUARY.getDisplayName(TextStyle.FULL, Locale.FRENCH)); System.out.println( Month.JANUARY.getDisplayName(TextStyle.SHORT, Locale.FRENCH)); System.out.println( Month.JANUARY.getDisplayName(TextStyle.NARROW, Locale.FRENCH)); System.out.println(); System.out.println( Month.JANUARY.getDisplayName(TextStyle.FULL, Locale.GERMANY)); System.out.println( Month.JANUARY.getDisplayName(TextStyle.SHORT, Locale.GERMANY)); System.out.println( Month.JANUARY.getDisplayName(TextStyle.NARROW, Locale.GERMANY)); System.out.println(); }}/* =================== 測試結果 =================== */一月一月1JanuaryJanJjanvierjanv.JJanuarJanJ