Calendar是Java提供的日历类,很方便我们使用
1. 使用Calendar取某年某月的总天数,废话少说直接上代码,循环取一年的每月最大天数
import java.util.Calendar;
import java.util.Scanner;
public class Demo {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("输入年份:");
String str = in.next();
int year = 0;
if (str.matches("\\d+")) {
year = Integer.parseInt(str);
} else {
System.out.println("输入有误");
return;
}
// 创建日历类
Calendar c = Calendar.getInstance();
System.out.println("用户输入的年份:" + year);
for (int i = 0; i < 12; i++) {
c.clear();
if (year > 0)
c.set(Calendar.YEAR, year);
c.set(Calendar.MONTH, i);
// 得到当前月份的最大天数
int actualMaximum = c.getActualMaximum(Calendar.DAY_OF_MONTH);
System.out.println(i + 1 + "月最大天数:" + actualMaximum);
}
}
}
运行结果:
输入年份:
2019
用户输入的年份:2019
1月最大天数:31
2月最大天数:28
3月最大天数:31
4月最大天数:30
5月最大天数:31
6月最大天数:30
7月最大天数:31
8月最大天数:31
9月最大天数:30
10月最大天数:31
11月最大天数:30
12月最大天数:31
在代码中,创建Calendar c = Calendar.getInstance();之后如果要重新赋年月份的值,记得一定要先clear();不然会有残留。