我们经常要判断某个月的天数,也就是月份的最后一天,在Java中如何实现呢?请看本文给大家介绍的方法。
代码如下:
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class DUtil {
public static String getLastDayOfMonth(String yearMonth) {
int year = Integer.parseInt(yearMonth.split("-")[0]); //年
int month = Integer.parseInt(yearMonth.split("-")[1]); //月
Calendar cal = Calendar.getInstance();
// 设置年份
cal.set(Calendar.YEAR, year);
// 设置月份
cal.set(Calendar.MONTH, month - 1);
// 获取某月最大天数
int lastDay = cal.getActualMaximum(Calendar.DATE);
// 设置日历中月份的最大天数
cal.set(Calendar.DAY_OF_MONTH, lastDay);
// 格式化日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
return sdf.format(cal.getTime());
}
public static void main(String[] args) {
System.out.println(getLastDayOfMonth("2019-01"));
}
}
输出结果:
2019-06-30