第一种:
/**
* 计算每个月的天数
*
* @param year 年份
* @param month 月份
* @return days 每个月的天数
*/
public static int getDaysOfMonth(int year, int month)
{
int days = 0;
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12)
{
days = 31;
}
else if (month == 4 || month == 6 || month == 9 || month == 11)
{
days = 30;
}
else
{ // 2月份,闰年29天、平年28天
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
{
days = 29;
}
else
{
days = 28;
}
}
return days;
}
第二种:
/**
* 计算每个月的天数
*
* @param year 年份
* @param month 月份
* @return days 每个月的天数
*/
public static int getDaysOfMonth2(int year, int month)
{
int[] arr = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
int days = 0;
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
{
arr[1] = 29; // 闰年2月29天
}
try
{
days = arr[month - 1];
}
catch (Exception e)
{
e.getStackTrace();
}
return days;
}