在Java編程中,獲取當前月份的第一天和最後一天是一項很常見的任務,很多開發者都需要用到。本文將從以下幾個方面詳細介紹如何使用Java獲取當前月份的第一天和最後一天:
一、使用Calendar獲取當前月份的第一天和最後一天
Java的日曆類Calendar提供了獲取當前月份的第一天和最後一天的方法。通過該方法可以輕鬆地獲取到所需的日期信息。
import java.util.Calendar;
public class MonthFirstLastDayDemo {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
// 獲取當前月份的第一天
calendar.set(Calendar.DAY_OF_MONTH, 1);
Date firstDayOfMonth = calendar.getTime();
System.out.println("當前月份的第一天:" + firstDayOfMonth);
// 獲取當前月份的最後一天
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
Date lastDayOfMonth = calendar.getTime();
System.out.println("當前月份的最後一天:" + lastDayOfMonth);
}
}
上述代碼通過Calendar.getInstance()方法獲取當前日期的Calendar實例,然後分別設置日曆的天數為1和當前月份的最大天數,就可以獲取到當前月份的第一天和最後一天。
二、使用Java 8的LocalDate獲取當前月份的第一天和最後一天
Java 8引入了新的日期時間API,其中一個是LocalDate類,它提供了一種更簡潔的方式來獲取當前月份的第一天和最後一天。
import java.time.LocalDate;
public class MonthFirstLastDayDemo {
public static void main(String[] args) {
LocalDate date = LocalDate.now();
// 獲取當前月份的第一天
LocalDate firstDayOfMonth = date.withDayOfMonth(1);
System.out.println("當前月份的第一天:" + firstDayOfMonth);
// 獲取當前月份的最後一天
LocalDate lastDayOfMonth = date.withDayOfMonth(date.lengthOfMonth());
System.out.println("當前月份的最後一天:" + lastDayOfMonth);
}
}
這段代碼使用LocalDate.now()方法獲取當前日期的LocalDate實例,然後使用withDayOfMonth()方法分別設置日子為1和該月份的最大天數,獲取當前月份的第一天和最後一天。
三、使用SimpleDateFormat獲取當前月份的第一天和最後一天
使用SimpleDateFormat類也能獲取當前月份的第一天和最後一天,代碼如下:
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class MonthFirstLastDayDemo {
public static void main(String[] args) {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM");
Calendar calendar = Calendar.getInstance();
// 獲取當前月份的第一天
calendar.set(Calendar.DAY_OF_MONTH, 1);
String firstDayOfMonth = dateFormat.format(calendar.getTime());
System.out.println("當前月份的第一天:" + firstDayOfMonth);
// 獲取當前月份的最後一天
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
String lastDayOfMonth = dateFormat.format(calendar.getTime());
System.out.println("當前月份的最後一天:" + lastDayOfMonth);
}
}
該代碼先構造了SimpleDateFormat實例,指定了日期格式為”yyyy-MM”。然後通過Calendar.getInstance()方法獲取當前日期的Calendar實例,分別設置日曆的天數為1和當前月份的最大天數,使用format()方法格式化輸出日期字元串。
四、總結
本文詳細介紹了Java獲取當前月份的第一天和最後一天的方法,包括使用Calendar、Java 8的LocalDate和SimpleDateFormat類。以上方法都很簡單易懂,開發者可以根據實際情況選擇適合自己的方法。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/184933.html