引言
獲取當前時間是Java編程中的常見操作。但是有時候,我們需要獲取當前月份並以它作為參考點進行計算,比如要獲取當前月份的第一天和最後一天。這個問題可以通過Java的Calendar類來解決。本文將介紹如何以Java獲取當前月份為中心的方法。
獲取當前月份
獲取當前月份的方法非常簡單:
Calendar now = Calendar.getInstance(); int month = now.get(Calendar.MONTH) + 1; System.out.println("當前月份是:" + month + "月");
首先,我們使用getInstance()方法獲取Calendar類的單例實例。接着,我們從實例中獲取MONTH字段的值。需要注意的是,Calendar的MONTH字段以0開始,所以需要將它加1。
這個例子輸出的結果可能是:當前月份是2月。
獲取指定月份的第一天和最後一天
獲取指定月份的第一天
以Java獲取指定月份的第一天也很容易,可以使用set()方法來將Calendar實例設置為指定月份的第一天:
Calendar now = Calendar.getInstance(); int month = 2; now.set(Calendar.MONTH, month - 1); now.set(Calendar.DAY_OF_MONTH, 1); System.out.println("指定月份的第一天是:" + now.getTime());
這個例子將Calendar實例設置為2月份的第一天,並輸出了這個日期。如果指定月份是當前月份,那麼代碼可能會輸出:指定月份的第一天是:Sat Feb 01 00:00:00 CST 2020。
需要注意的是,由於Calendar的MONTH字段以0開始,所以需要將month減1。
獲取指定月份的最後一天
獲取指定月份的最後一天和上述方法類似,也使用set()方法將Calendar實例設置為下一個月的1號,然後將日期減1就可以了:
Calendar now = Calendar.getInstance(); int month = 2; now.set(Calendar.MONTH, month - 1); now.set(Calendar.DAY_OF_MONTH, 1); now.add(Calendar.MONTH, 1); now.add(Calendar.DAY_OF_MONTH, -1); System.out.println("指定月份的最後一天是:" + now.getTime());
這個例子將Calendar實例設置為2月份的最後一天,並輸出了這個日期。如果指定月份是當前月份,那麼代碼可能會輸出:指定月份的最後一天是:Fri Feb 28 00:00:00 CST 2020。
獲取本月的第一天和最後一天
獲取本月的第一天
獲取本月的第一天非常簡單,可以直接使用set()方法將Calendar實例設置為本月的第一天:
Calendar now = Calendar.getInstance(); now.set(Calendar.DAY_OF_MONTH, 1); System.out.println("本月的第一天是:" + now.getTime());
這個例子將Calendar實例設置為本月的第一天,並輸出了這個日期。如果當前是2月份,那麼代碼可能會輸出:本月的第一天是:Sat Feb 01 00:00:00 CST 2020。
獲取本月的最後一天
獲取本月的最後一天也很容易,只需要先將Calendar實例設置為下個月的1號,再將日期減1即可:
Calendar now = Calendar.getInstance(); now.set(Calendar.DAY_OF_MONTH, 1); now.add(Calendar.MONTH, 1); now.add(Calendar.DAY_OF_MONTH, -1); System.out.println("本月的最後一天是:" + now.getTime());
這個例子將Calendar實例設置為本月的最後一天,並輸出了這個日期。如果當前是2月份,那麼代碼可能會輸出:本月的最後一天是:Fri Feb 28 00:00:00 CST 2020。
小結
本文介紹了如何以Java獲取當前月份為中心的方法。我們使用Calendar類來獲取當前月份,並使用set()和add()方法來獲取指定月份和本月的第一天和最後一天。希望這篇文章能夠幫助大家。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/193058.html