Calendar
Calendar cal = Calendar.getInstance();
GET
当前时间
// get()之类的方法用于获取时间
cal.get(Calendar.YEAR); // Year
cal.get(Calendar.MONTH); // Month (注意一月是0)
cal.get(Calendar.DAY_OF_MONTH); // Day
cal.get(Calendar.DAY_OF_WEEK); // Week(注意周日是1)
SET
任意时间
// set()之类的方法用于设置时间
cal.set(y, m, d); // 设置年月日
cal.set(field, value); //通过键值对设置时间(单位,目标值)
ADD
日期的运算
cal.add(field, amount); // (单位,变化量)
实践
打印某年某月的日历
代码
import java.util.Calendar;
import java.util.Scanner;
class Solution {
public static void cal(int year, int month) {
Calendar calendar = Calendar.getInstance();
System.out.println("\t\t" + year + "年" + month + "月");
System.out.println("日\t一\t二\t三\t四\t五\t六\t");
calendar.set(year, --month, 1);
int d = calendar.get(Calendar.DAY_OF_WEEK);
calendar.add(Calendar.DAY_OF_MONTH, -d+1);
int cnt = 1;
while(cnt++ <=35) {
System.out.print(calendar.get(Calendar.DAY_OF_MONTH) + "\t");
if (calendar.get(Calendar.DAY_OF_WEEK)==7) {
System.out.println("");
}
calendar.add(Calendar.DAY_OF_MONTH, 1);
}
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("Please input a year:");
int year = in.nextInt();
System.out.println("Please input a month:");
int month = in.nextInt();
cal(year, month);
}
}