今天在工作中因爲項目需求,需要判斷不同月份中有多少天,這個時候就要考慮到平年還是閏年。
在實際業務中:從前臺傳遞一個日期,例如:2019-08-29,這個時候需要根據傳遞的日期判斷這個月中一共有多少天。實現代碼如下,利用了Calendar。
String str = "2016-04-01";
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
try {
Date date = format.parse(str);
calendar.setTime(date);
System.out.println(calendar.getTime());
System.out.println("getActualMaximum:"+calendar.getActualMaximum(Calendar.DAY_OF_MONTH));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
首先,將字符串類型的數據,轉換成Date類型。然後使用setTime()方法,對calendar進行設置。通過calendar.getActualMaximum(Calendar.DAY_OF_MONTH))獲取,calendar中月份的天數。
在Calendar學習中,對Calendar進行設置,獲取,增加。代碼如下:
Calendar calendar = Calendar.getInstance();
System.out.println(calendar.get(Calendar.YEAR));
//月份下標從零開始
System.out.println(calendar.get(Calendar.MONDAY)+1);
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
System.out.println(calendar.get(Calendar.HOUR_OF_DAY));
System.out.println(calendar.get(Calendar.MINUTE));
System.out.println(calendar.get(Calendar.SECOND));
calendar.set(Calendar.YEAR,2020);
calendar.add(Calendar.YEAR, 1);
System.out.println(calendar.getTime());